Re: [PATCH] Add ELF note with Linux version

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

 



> > This seems outright silly.
> > Either we should revert the notes changes or someone caring about it 
> > should sweep all archs and make sure it does not hurt there.
> 
> Hm, sounds like yet another binutils bug; unfortunately common when ELF
> notes are about.  Was there any further effort to isolate what was
> causing the problem?

Lennart posted this:
An ARM vmlinux kernel image built with pre-build-id binutils has:

        Program Header:
            LOAD off    0x00008000 vaddr 0xc0008000 paddr 0xc0008000 align 2**15
                 filesz 0x002e503c memsz 0x003032c0 flags rwx
        private flags = 4000002: [Version4 EABI] [has entry point]


Whereas a build-id binutils-built vmlinux kernel image ends up with:

        Program Header:
            LOAD off    0x00008000 vaddr 0x00000000 paddr 0x00000000 align 2**15
                 filesz 0x00000024 memsz 0x00000024 flags r--
            LOAD off    0x00010000 vaddr 0xc0008000 paddr 0xc0008000 align 2**15
                 filesz 0x002e503c memsz 0x003032c0 flags rwx
            NOTE off    0x00008000 vaddr 0x00000000 paddr 0x00000000 align 2**2
                 filesz 0x00000024 memsz 0x00000024 flags r--
        private flags = 4000002: [Version4 EABI] [has entry point]


The .note.gnu.build-id section causes objcopy to produce a 3G+
Image file, breaking the build.


Samuel Ortiz posted following patch:
> With build-id binutils (e.g. the latest bintuils 2.18), objcopy produces
> a 3.1 Gbytes Image file. Adding a note section fixes the problem.
> 
> Signed-off-by: Samuel Ortiz <[email protected]>
> Cc: Lennert Buytenhek <[email protected]>
> Cc: Sam Ravnborg <[email protected]>
> 
> ---
>  arch/arm/kernel/vmlinux.lds.S |    1 +
>  1 file changed, 1 insertion(+)
> 
> Index: linux-2.6.22/arch/arm/kernel/vmlinux.lds.S
> ===================================================================
> --- linux-2.6.22.orig/arch/arm/kernel/vmlinux.lds.S   2007-09-11 18:32:29.000000000 +0200
> +++ linux-2.6.22/arch/arm/kernel/vmlinux.lds.S        2007-09-11 18:33:42.000000000 +0200
> @@ -94,6 +94,7 @@
>                       TEXT_TEXT
>                       SCHED_TEXT
>                       LOCK_TEXT
> +                     *(.note.*)
>  #ifdef CONFIG_MMU
>                       *(.fixup)
>  #endif


I cannot see why this should fix it since the patch does
not discard the section. Maybe the inclusion of the section in
some oter section does some good.

Anyway the original submitter of the build-id should have identified such
issues and fixed all archs.

And I still do not get exactly what problem the note section solves when
included in vmlinux....

	Sam
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux