Gitweb: http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=045e72acf16054c4ed2760e9a8edb19a08053af1 Commit: 045e72acf16054c4ed2760e9a8edb19a08053af1 Parent: 2ebc3cc920e7a076539aa8badbaf0919540a3438 Author: Sam Ravnborg <[EMAIL PROTECTED]> AuthorDate: Thu Jul 26 10:41:13 2007 -0700 Committer: Linus Torvalds <[EMAIL PROTECTED]> CommitDate: Thu Jul 26 11:35:18 2007 -0700
fix 'dynreloc miscount' link error on Powerpc Nathan Lynch <[EMAIL PROTECTED]> reported: 2.6.23-rc1 breaks the build for 64-bit powerpc for me (using maple_defconfig): LD vmlinux.o powerpc64-unknown-linux-gnu-ld: dynreloc miscount for kernel/built-in.o, section .opd powerpc64-unknown-linux-gnu-ld: can not edit opd Bad value make: *** [vmlinux.o] Error 1 However, I see a possibly related binutils patch: http://article.gmane.org/gmane.comp.gnu.binutils/33650 It was tracked down to be caused by the weak prototype declaration in mm.h: __attribute__((weak)) const char *arch_vma_name(struct vm_area_struct *vma); But there is no need to make the declaration weak - only the definition needs to be marked weak. So drop the weak declaration. And in the process drop the duplicate definition in page.h for powerpc. Note: the arch_vma_name fix for x86_64 needs to be applied first to avoid breaking x86_64 Signed-off-by: Sam Ravnborg <[EMAIL PROTECTED]> Cc: Nathan Lynch <[EMAIL PROTECTED]> Cc: Paul Mackerras <[EMAIL PROTECTED]> Cc: Benjamin Herrenschmidt <[EMAIL PROTECTED]> Signed-off-by: Andrew Morton <[EMAIL PROTECTED]> Signed-off-by: Linus Torvalds <[EMAIL PROTECTED]> --- include/asm-powerpc/page.h | 1 - include/linux/mm.h | 2 +- 2 files changed, 1 insertions(+), 2 deletions(-) diff --git a/include/asm-powerpc/page.h b/include/asm-powerpc/page.h index 10c51f4..236a921 100644 --- a/include/asm-powerpc/page.h +++ b/include/asm-powerpc/page.h @@ -190,7 +190,6 @@ extern void copy_user_page(void *to, void *from, unsigned long vaddr, extern int page_is_ram(unsigned long pfn); struct vm_area_struct; -extern const char *arch_vma_name(struct vm_area_struct *vma); #include <asm-generic/memory_model.h> #endif /* __ASSEMBLY__ */ diff --git a/include/linux/mm.h b/include/linux/mm.h index c456c3a..3e9e8fe 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -1246,7 +1246,7 @@ void drop_slab(void); extern int randomize_va_space; #endif -__attribute__((weak)) const char *arch_vma_name(struct vm_area_struct *vma); +const char * arch_vma_name(struct vm_area_struct *vma); #endif /* __KERNEL__ */ #endif /* _LINUX_MM_H */ - To unsubscribe from this list: send the line "unsubscribe git-commits-head" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html