This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [Gold] problem building linux kernel


On 2010.11.16 at 06:31 -0800, Ian Lance Taylor wrote:
> Markus Trippelsdorf <markus@trippelsdorf.de> writes:
> 
> > Would it be hard to fix this issue in gold or is this a kernel side
> > problem?
> 
> Somebody will have to debug what is happening in order to find out.
> These problems are generally linker script issues, in which gold
> interprets a linker script differently than GNU ld.  I normally consider
> these to be bugs in gold, unless the GNU ld behaviour is just
> outrageously incorrect.

OK here's what I have found out:

Gold produces a malformed vmlinux file with this command:

ld -m elf_x86_64 --build-id -o vmlinux -T arch/x86/kernel/vmlinux.lds arch/x86/kernel/head_64.o arch/x86/kernel/head64.o arch/x86/kernel/head.o arch/x86/kernel/init_task.o  init/built-in.o --start-group  usr/built-in.o  arch/x86/built-in.o  kernel/built-in.o  mm/built-in.o  fs/built-in.o  ipc/built-in.o  security/built-in.o  crypto/built-in.o  block/built-in.o  lib/lib.a  arch/x86/lib/lib.a  lib/built-in.o  arch/x86/lib/built-in.o  drivers/built-in.o  sound/built-in.o  firmware/built-in.o  arch/x86/pci/built-in.o  arch/x86/power/built-in.o  arch/x86/video/built-in.o  net/built-in.o --end-group .tmp_kallsyms2.o

The linker script vmlinux.lds is attached.

If I use ld.bfd instead of gold in the command above and then continue
the build process with gold, I get a valid kernel:

Kernel: arch/x86/boot/bzImage is ready 

-- 
Markus

Attachment: vmlinux.lds
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]