[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Bug binutils/15947] objcopy changes the type of the section header
From: |
nickc at redhat dot com |
Subject: |
[Bug binutils/15947] objcopy changes the type of the section header |
Date: |
Thu, 19 Sep 2013 11:41:22 +0000 |
https://sourceware.org/bugzilla/show_bug.cgi?id=15947
Nick Clifton <nickc at redhat dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |WAITING
--- Comment #5 from Nick Clifton <nickc at redhat dot com> ---
Hi Dmytro,
Ah - as I suspected - this is not really a bug. The problem is that the
vmlinux exectuable has two program headers, one a loadable segment and one a
note segment (p_type field is PT_NOTE). The __dbe_table section is mapped into
this note segment, so when objcopy writes out the copied executable it
automatically sets the section type to SHT_NOTE.
Try running "readelf -lS vmlinux" to see this. Near the end you will see:
Section to Segment mapping:
Segment Sections...
00 .text __ex_table __dbe_table .notes .rodata __ksymtab __ksymtab_gpl
__ksymtab_strings __init_rodata __param __modver .data .init.text .init.data
.mips.machines.init .exit.text .bss
01 __dbe_table .notes
The ELF ABI does not specifically require that segments of type PT_NOTE only
contain sections of type SHT_NOTE. But it does specify that segments of type
PT_NOTE only contains information in the special note format, and the only
section type that has this format is the SHT_NOTE. Hence it makes sense that
all sections contained within a PT_NOTE segment should have the SHT_NOTE type.
The real problem, I suspect, is that the linker script you are using to build
the vmlinux executable in the first place is not leaving a gap between the
__dbe_table section and the .notes section, so that when the program headers
are created __dbe_table is being sucked in to the PT_NOTE segment.
Are you happy with this explanation ? If so, and assuming that you agree with
my analysis, please could you close this PR.
Cheers
Nick
--
You are receiving this mail because:
You are on the CC list for the bug.
- [Bug binutils/15947] New: objcopy changes the type of the section header, milinevskyy at gmail dot com, 2013/09/12
- [Bug binutils/15947] objcopy changes the type of the section header, nickc at redhat dot com, 2013/09/17
- [Bug binutils/15947] objcopy changes the type of the section header, milinevskyy at gmail dot com, 2013/09/17
- [Bug binutils/15947] objcopy changes the type of the section header, nickc at redhat dot com, 2013/09/18
- [Bug binutils/15947] objcopy changes the type of the section header, milinevskyy at gmail dot com, 2013/09/18
- [Bug binutils/15947] objcopy changes the type of the section header,
nickc at redhat dot com <=
- [Bug binutils/15947] objcopy changes the type of the section header, milinevskyy at gmail dot com, 2013/09/19
- [Bug binutils/15947] objcopy changes the type of the section header, nickc at redhat dot com, 2013/09/19