The patch for PR4144 broke objcopy --only-keep-debug.
$ objcopy --only-keep-debug vmlinux-2.6.21-4-default
vmlinux-2.6.21-4-default.debug
BFD: vmlinux-2.6.21-4-default.debug: section `.text' can't be allocated in
segment 0
objcopy: vmlinux-2.6.21-4-default.debug: Bad value
BFD: vmlinux-2.6.21-4-default.debug: section `.text' can't be allocated in
segment 0
objcopy: vmlinux-2.6.21-4-default.debug: Bad value
The problem is that a !SEC_LOAD section does not contribute to p_filesz, so
that in assign_file_positions_for_load_sections the value for adjust includes
the size of all previous sections. This causes p_memsz to overshoot,
eventually growing so much that p_vaddr + p_memsz overflows in
ELF_IS_SECTION_IN_SEGMENT. Even if it does not overflow the values for p_memsz
in the segments will be wrong.
--
Summary: objcopy --only-keep-debug broken
Product: binutils
Version: 2.18 (HEAD)
Status: NEW
Severity: normal
Priority: P2
Component: binutils
AssignedTo: unassigned at sources dot redhat dot com
ReportedBy: schwab at suse dot de
CC: amodra at bigpond dot net dot au,bug-binutils at gnu dot
org
OtherBugsDependingO 4144
nThis:
http://sourceware.org/bugzilla/show_bug.cgi?id=4479
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.
_______________________________________________
bug-binutils mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/bug-binutils