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

Reply via email to