arch/ppc/mm/extable.c      |    0 
 arch/ppc64/kernel/module.c |   13 +++++--------
 include/asm-ppc64/module.h |    4 ++++
 3 files changed, 9 insertions(+), 8 deletions(-)

diff -puN arch/ppc64/kernel/module.c~ppc64-update-fixes arch/ppc64/kernel/module.c
--- 25-power4/arch/ppc64/kernel/module.c~ppc64-update-fixes	2003-04-08 23:47:04.000000000 -0700
+++ 25-power4-akpm/arch/ppc64/kernel/module.c	2003-04-09 00:02:04.000000000 -0700
@@ -20,6 +20,7 @@
 #include <linux/moduleloader.h>
 #include <linux/err.h>
 #include <linux/vmalloc.h>
+#include <asm/module.h>
 #include <asm/uaccess.h>
 
 /* FIXME: We don't do .init separately.  To do this, we'd need to have
@@ -375,15 +376,11 @@ int apply_relocate_add(Elf64_Shdr *sechd
 	return 0;
 }
 
-/* In arch/ppc64/mm/extable.c */
-extern void sort_ex_table(struct exception_table_entry *start,
-			  struct exception_table_entry *finish);
-
 int module_finalize(const Elf_Ehdr *hdr,
-		    const Elf_Shdr *sechdrs,
-		    struct module *me)
+		const Elf_Shdr *sechdrs, struct module *me)
 {
-	sort_ex_table(me->extable,
-		      me->extable + me->num_exentries);
+	sort_ex_table((struct exception_table_entry *)me->extable,
+		      (struct exception_table_entry *)me->extable +
+				me->num_exentries);
 	return 0;
 }
diff -puN arch/ppc/mm/extable.c~ppc64-update-fixes arch/ppc/mm/extable.c
diff -puN include/asm-ppc64/module.h~ppc64-update-fixes include/asm-ppc64/module.h
--- 25-power4/include/asm-ppc64/module.h~ppc64-update-fixes	2003-04-08 23:48:52.000000000 -0700
+++ 25-power4-akpm/include/asm-ppc64/module.h	2003-04-09 00:00:51.000000000 -0700
@@ -19,4 +19,8 @@ struct mod_arch_specific
 asm(".section .stubs,\"ax\",@nobits; .align 3; .previous");
 #endif
 
+struct exception_table_entry;
+void sort_ex_table(struct exception_table_entry *start,
+			struct exception_table_entry *finish);
+
 #endif /* _ASM_PPC64_MODULE_H */

_