]> git.hungrycats.org Git - linux/commitdiff
[PATCH] do not use shared extable code for ia64
authorAndrew Morton <akpm@osdl.org>
Tue, 20 Jan 2004 11:17:40 +0000 (03:17 -0800)
committerLinus Torvalds <torvalds@home.osdl.org>
Tue, 20 Jan 2004 11:17:40 +0000 (03:17 -0800)
From: Jes Sorensen <jes@trained-monkey.org>

The new sort_extable and shared search_extable code doesn't work on ia64.
I have introduced two new #defines that archs can define to avoid the
common code being built.  ARCH_HAS_SEARCH_EXTABLE and
ARCH_HAS_SORT_EXTABLE.

include/asm-ia64/uaccess.h
lib/extable.c

index 9bd9e3f0c48e4de51a2808b403d21d7a2d61f9ab..8e1feee4ea5d0b1d41b36ff83a29973f9f7e7541 100644 (file)
@@ -281,6 +281,9 @@ extern unsigned long __strnlen_user (const char *, long);
        __su_ret;                                               \
 })
 
+#define ARCH_HAS_SORT_EXTABLE
+#define ARCH_HAS_SEARCH_EXTABLE
+
 struct exception_table_entry {
        int addr;       /* gp-relative address of insn this fixup is for */
        int cont;       /* gp-relative continuation address; if bit 2 is set, r9 is set to 0 */
index f95c5b098772240b7a91b5d1f0ada7c605fa2429..57dc4333e217a6d58e085b1eac590ed20331b8a1 100644 (file)
@@ -18,6 +18,7 @@
 extern struct exception_table_entry __start___ex_table[];
 extern struct exception_table_entry __stop___ex_table[];
 
+#ifndef ARCH_HAS_SORT_EXTABLE
 /*
  * The exception table needs to be sorted so that the binary
  * search that we use to find entries in it works properly.
@@ -45,7 +46,9 @@ void sort_extable(struct exception_table_entry *start,
                }
        }
 }
+#endif
 
+#ifndef ARCH_HAS_SEARCH_EXTABLE
 /*
  * Search one exception table for an entry corresponding to the
  * given instruction address, and return the address of the entry,
@@ -75,3 +78,4 @@ search_extable(const struct exception_table_entry *first,
         }
         return NULL;
 }
+#endif