Re: [PATCH 2/2] scripts/faddr2line: Use LLVM addr2line and readelf if LLVM=1

From: Josh Poimboeuf
Date: Mon Jul 24 2023 - 20:08:02 EST


On Mon, Jul 24, 2023 at 06:45:17PM +0100, Will Deacon wrote:
> GNU utilities cannot necessarily parse objects built by LLVM, which can
> result in confusing errors when using 'faddr2line':
>
> $ CROSS_COMPILE=aarch64-linux-gnu- ./scripts/faddr2line vmlinux do_one_initcall+0xf4/0x260
> aarch64-linux-gnu-addr2line: vmlinux: unknown type [0x13] section `.relr.dyn'
> aarch64-linux-gnu-addr2line: DWARF error: invalid or unhandled FORM value: 0x25
> do_one_initcall+0xf4/0x260:
> aarch64-linux-gnu-addr2line: vmlinux: unknown type [0x13] section `.relr.dyn'
> aarch64-linux-gnu-addr2line: DWARF error: invalid or unhandled FORM value: 0x25
> $x.73 at main.c:?
>
> Although this can be worked around by setting CROSS_COMPILE to "llvm=-",
> it's cleaner to follow the same syntax as the top-level Makefile and
> accept LLVM=1 as an indication to use the llvm- tools.
>
> Cc: Josh Poimboeuf <jpoimboe@xxxxxxxxxx>
> Cc: John Stultz <jstultz@xxxxxxxxxx>
> Signed-off-by: Will Deacon <will@xxxxxxxxxx>

This one looks good to me, I'll go ahead and queue it.

--
Josh