The following commit has been merged into the objtool/core branch of tip: Commit-ID: 5b280de46d2bcea9def0dd84b1e86f8b42ca70b9 Gitweb: https://git.kernel.org/tip/5b280de46d2bcea9def0dd84b1e86f8b42ca70b9 Author: Brian Johannesmeyer <bjohannesmeyer@xxxxxxxxx> AuthorDate: Mon, 15 Apr 2024 16:55:35 +02:00 Committer: Josh Poimboeuf <jpoimboe@xxxxxxxxxx> CommitterDate: Tue, 02 Jul 2024 23:38:36 -07:00 scripts/faddr2line: Pass --addresses argument to addr2line In preparation for identifying an addr2line sentinel. See previous work [0], which applies a similar change to perf. [0] commit 8dc26b6f718a ("perf srcline: Make sentinel reading for binutils addr2line more robust") Signed-off-by: Brian Johannesmeyer <bjohannesmeyer@xxxxxxxxx> Link: https://lore.kernel.org/r/20240415145538.1938745-5-bjohannesmeyer@xxxxxxxxx Signed-off-by: Josh Poimboeuf <jpoimboe@xxxxxxxxxx> --- scripts/faddr2line | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/scripts/faddr2line b/scripts/faddr2line index bb3b5f0..820680c 100755 --- a/scripts/faddr2line +++ b/scripts/faddr2line @@ -260,9 +260,12 @@ __faddr2line() { # Pass section address to addr2line and strip absolute paths # from the output: - local args="--functions --pretty-print --inlines --exe=$objfile" + local args="--functions --pretty-print --inlines --addresses --exe=$objfile" [[ $IS_VMLINUX = 0 ]] && args="$args --section=$sec_name" - local output=$(${ADDR2LINE} $args $addr | sed "s; $dir_prefix\(\./\)*; ;") + local output_with_addr=$(${ADDR2LINE} $args $addr | sed "s; $dir_prefix\(\./\)*; ;") + [[ -z $output_with_addr ]] && continue + + local output=$(echo "${output_with_addr}" | sed 's/^0x[0-9a-fA-F]*: //') [[ -z $output ]] && continue # Default output (non --list):