bug-binutils
[Top][All Lists]
Advanced

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

[Bug gold/17731] gold doesn't handle .debug_frame section: ld: internal


From: ccoutant at gmail dot com
Subject: [Bug gold/17731] gold doesn't handle .debug_frame section: ld: internal error in set_section_addresses, at script-sections.cc:2491
Date: Sun, 07 Jun 2015 22:17:24 +0000

https://sourceware.org/bugzilla/show_bug.cgi?id=17731

--- Comment #8 from Cary Coutant <ccoutant at gmail dot com> ---
(In reply to Markus Trippelsdorf from comment #5)
> Indeed with the following kernel patch "fixes" the issue for me:
> 
> diff --git a/include/asm-generic/vmlinux.lds.h
> b/include/asm-generic/vmlinux.lds.h
> index bee5d683074d..68b80c7e9527 100644
> --- a/include/asm-generic/vmlinux.lds.h
> +++ b/include/asm-generic/vmlinux.lds.h
> @@ -569,7 +569,6 @@
>                                 .gnu.linkonce.wi.*) }                   \
>                 .debug_abbrev   0 : { *(.debug_abbrev) }                \
>                 .debug_line     0 : { *(.debug_line) }                  \
> -               .debug_frame    0 : { *(.debug_frame) }                 \
>                 .debug_str      0 : { *(.debug_str) }                   \
>                 .debug_loc      0 : { *(.debug_loc) }                   \
>                 .debug_macinfo  0 : { *(.debug_macinfo) }               \

I was seduced into thinking there was something special about .debug_frame
that set it apart from the other .debug sections listed above. But the only
thing that sets it apart is that it's the only one of those sections that
appears in any of the .o files the linker sees; it turns out that we'd have
had the same problem with any compressed debug sections. The patterns
are only recognizing uncompressed debug sections, so .zdebug_frame is
being left unmatched. We don't expect that to happen, and assert on the
unexpected condition.

Workaround would be to add the compressed names to the specs, as in:

               .debug_frame    0 : { *(.debug_frame .zdebug_frame) }      \

Working on a fix...

-- 
You are receiving this mail because:
You are on the CC list for the bug.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]