Link breakage on all architectures which implement their own show_mem

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is the problem a lot of architectures will see:

Specifically this:
  LD      vmlinux.o
lib/lib.a(show_mem.o): In function `show_mem':
(.text.show_mem+0x0): multiple definition of `show_mem'
arch/parisc/mm/built-in.o:(.text.show_mem+0x0): first defined here
make: *** [vmlinux.o] Error 1

Caused by this patch:

commit ddd588b5dd55f14320379961e47683db4e4c1d90
Author: David Rientjes <rientjes@xxxxxxxxxx>
Date:   Tue Mar 22 16:30:46 2011 -0700

    oom: suppress nodes that are not allowed from meminfo on oom kill

Is the cause.  What it does is introduce a new __show_mem() which is
required by files in mm/, so the object containing it: show_mem.o gets
pulled in all the time in the link and that gives every architecture
that implements their own show_mem() a link failure because of the
double definition.  Library linking works at the file level, not at the
function level.  To work, you have to put these functions in separate
files.

James


--
To unsubscribe from this list: send the line "unsubscribe linux-arch" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Kernel]     [Kernel Newbies]     [x86 Platform Driver]     [Netdev]     [Linux Wireless]     [Netfilter]     [Bugtraq]     [Linux Filesystems]     [Yosemite Discussion]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Device Mapper]

  Powered by Linux