[PATCH 2/2] arm64: vdso32: Add DWARF_DEBUG

Nick Desaulniers ndesaulniers at google.com
Thu Jun 30 14:08:34 PDT 2022


On Thu, Jun 30, 2022 at 8:32 AM Nathan Chancellor <nathan at kernel.org> wrote:
>
> When building the 32-bit vDSO with LLVM 15 and CONFIG_DEBUG_INFO, there
> are the following orphan section warnings:
>
>   ld.lld: warning: arch/arm64/kernel/vdso32/note.o:(.debug_abbrev) is being placed in '.debug_abbrev'
>   ld.lld: warning: arch/arm64/kernel/vdso32/note.o:(.debug_info) is being placed in '.debug_info'
>   ld.lld: warning: arch/arm64/kernel/vdso32/note.o:(.debug_str_offsets) is being placed in '.debug_str_offsets'
>   ld.lld: warning: arch/arm64/kernel/vdso32/note.o:(.debug_str) is being placed in '.debug_str'
>   ld.lld: warning: arch/arm64/kernel/vdso32/note.o:(.debug_addr) is being placed in '.debug_addr'
>   ld.lld: warning: arch/arm64/kernel/vdso32/note.o:(.debug_line) is being placed in '.debug_line'
>   ld.lld: warning: arch/arm64/kernel/vdso32/note.o:(.debug_line_str) is being placed in '.debug_line_str'
>   ld.lld: warning: arch/arm64/kernel/vdso32/vgettimeofday.o:(.debug_loclists) is being placed in '.debug_loclists'
>   ld.lld: warning: arch/arm64/kernel/vdso32/vgettimeofday.o:(.debug_abbrev) is being placed in '.debug_abbrev'
>   ld.lld: warning: arch/arm64/kernel/vdso32/vgettimeofday.o:(.debug_info) is being placed in '.debug_info'
>   ld.lld: warning: arch/arm64/kernel/vdso32/vgettimeofday.o:(.debug_rnglists) is being placed in '.debug_rnglists'
>   ld.lld: warning: arch/arm64/kernel/vdso32/vgettimeofday.o:(.debug_str_offsets) is being placed in '.debug_str_offsets'
>   ld.lld: warning: arch/arm64/kernel/vdso32/vgettimeofday.o:(.debug_str) is being placed in '.debug_str'
>   ld.lld: warning: arch/arm64/kernel/vdso32/vgettimeofday.o:(.debug_addr) is being placed in '.debug_addr'
>   ld.lld: warning: arch/arm64/kernel/vdso32/vgettimeofday.o:(.debug_frame) is being placed in '.debug_frame'
>   ld.lld: warning: arch/arm64/kernel/vdso32/vgettimeofday.o:(.debug_line) is being placed in '.debug_line'
>   ld.lld: warning: arch/arm64/kernel/vdso32/vgettimeofday.o:(.debug_line_str) is being placed in '.debug_line_str'
>
> These are DWARF5 sections, as that is the implicit default version for

Most of these are DWARF v5, but some like .debug_info and .debug_line
are DWARF v2; this isn't specifically a DWARF v5 issue, more so just
an issue with CONFIG_DEBUG_INFO.  Not worth a v2 IMO though.  Thanks
for the patch!
Reviewed-by: Nick Desaulniers <ndesaulniers at google.com>

> clang-14 and newer when just '-g' is used. All DWARF sections are
> handled by the DWARF_DEBUG macro from include/asm-generic/vmlinux.lds.h
> so use that macro here to fix the warnings regardless of DWARF version.
>
> Fixes: 9d4775b332e1 ("arm64: vdso32: enable orphan handling for VDSO")
> Signed-off-by: Nathan Chancellor <nathan at kernel.org>
> ---
>  arch/arm64/kernel/vdso32/vdso.lds.S | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/arch/arm64/kernel/vdso32/vdso.lds.S b/arch/arm64/kernel/vdso32/vdso.lds.S
> index c25bed8e6df1..8d95d7d35057 100644
> --- a/arch/arm64/kernel/vdso32/vdso.lds.S
> +++ b/arch/arm64/kernel/vdso32/vdso.lds.S
> @@ -57,6 +57,7 @@ SECTIONS
>         .rel.dyn        : { *(.rel*) }
>
>         .ARM.exidx : { *(.ARM.exidx*) }
> +       DWARF_DEBUG
>         ELF_DETAILS
>         .ARM.attributes 0 : { *(.ARM.attributes) }
>
> --
> 2.37.0
>


-- 
Thanks,
~Nick Desaulniers



More information about the linux-arm-kernel mailing list