lkml.org 
[lkml]   [2021]   [Feb]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: [PATCH v9 1/3] vmlinux.lds.h: add DWARF v5 sections
    From
    Date
    Hi Nick,

    On Fri, 2021-02-05 at 12:22 -0800, Nick Desaulniers wrote:
    > We expect toolchains to produce these new debug info sections as part of
    > DWARF v5. Add explicit placements to prevent the linker warnings from
    > --orphan-section=warn.
    >
    > Compilers may produce such sections with explicit -gdwarf-5, or based on
    > the implicit default version of DWARF when -g is used via DEBUG_INFO.
    > This implicit default changes over time, and has changed to DWARF v5
    > with GCC 11.
    >
    > .debug_sup was mentioned in review, but without compilers producing it
    > today, let's wait to add it until it becomes necessary.

    I don't think that will be necessary. .debug_sup is for Dwarf
    Supplemental file producers like dwz. Those would run after the linker.

    > Cc: stable@vger.kernel.org
    > Link: https://bugzilla.redhat.com/show_bug.cgi?id=1922707
    > Reported-by: Chris Murphy <lists@colorremedies.com>
    > Suggested-by: Fangrui Song <maskray@google.com>
    > Reviewed-by: Nathan Chancellor <nathan@kernel.org>
    > Tested-by: Sedat Dilek <sedat.dilek@gmail.com>
    > Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
    > ---
    > include/asm-generic/vmlinux.lds.h | 7 ++++++-
    > 1 file changed, 6 insertions(+), 1 deletion(-)
    >
    > diff --git a/include/asm-generic/vmlinux.lds.h b/include/asm-generic/vmlinux.lds.h
    > index 34b7e0d2346c..1e7cde4bd3f9 100644
    > --- a/include/asm-generic/vmlinux.lds.h
    > +++ b/include/asm-generic/vmlinux.lds.h
    > @@ -842,8 +842,13 @@
    > /* DWARF 4 */ \
    > .debug_types 0 : { *(.debug_types) } \
    > /* DWARF 5 */ \
    > + .debug_addr 0 : { *(.debug_addr) } \
    > + .debug_line_str 0 : { *(.debug_line_str) } \
    > + .debug_loclists 0 : { *(.debug_loclists) } \
    > .debug_macro 0 : { *(.debug_macro) } \
    > - .debug_addr 0 : { *(.debug_addr) }
    > + .debug_names 0 : { *(.debug_names) } \
    > + .debug_rnglists 0 : { *(.debug_rnglists) } \
    > + .debug_str_offsets 0 : { *(.debug_str_offsets) }
    >
    > /* Stabs debugging sections. */
    > #define STABS_DEBUG \

    Looks good to me.

    Cheers,

    Mark

    \
     
     \ /
      Last update: 2021-02-06 16:04    [W:4.435 / U:0.024 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site