The following commit has been merged into the objtool/core branch of tip: Commit-ID: c02904f05ff805d6c0631634d5751ebd338f75ec Gitweb: https://git.kernel.org/tip/c02904f05ff805d6c0631634d5751ebd338f75ec Author: Brian Johannesmeyer <bjohannesmeyer@xxxxxxxxx> AuthorDate: Mon, 15 Apr 2024 16:55:38 +02:00 Committer: Josh Poimboeuf <jpoimboe@xxxxxxxxxx> CommitterDate: Tue, 02 Jul 2024 23:38:37 -07:00 scripts/faddr2line: Check only two symbols when calculating symbol size Rather than looping through each symbol in a particular section to calculate a symbol's size, grep for the symbol and its immediate successor, and only use those two symbols. Signed-off-by: Brian Johannesmeyer <bjohannesmeyer@xxxxxxxxx> Link: https://lore.kernel.org/r/20240415145538.1938745-8-bjohannesmeyer@xxxxxxxxx Signed-off-by: Josh Poimboeuf <jpoimboe@xxxxxxxxxx> --- scripts/faddr2line | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/faddr2line b/scripts/faddr2line index 1fa6bee..fe0cc45 100755 --- a/scripts/faddr2line +++ b/scripts/faddr2line @@ -252,7 +252,7 @@ __faddr2line() { found=2 break fi - done < <(echo "${ELF_SYMS}" | sed 's/\[.*\]//' | ${AWK} -v sec=$sym_sec '$7 == sec' | sort --key=2) + done < <(echo "${ELF_SYMS}" | sed 's/\[.*\]//' | ${AWK} -v sec=$sym_sec '$7 == sec' | sort --key=2 | ${GREP} -A1 --no-group-separator " ${sym_name}$") if [[ $found = 0 ]]; then warn "can't find symbol: sym_name: $sym_name sym_sec: $sym_sec sym_addr: $sym_addr sym_elf_size: $sym_elf_size"