contrib/plugins/uftrace_symbols.py: handle missing source line from addr2line
Some symbols have only a file information, and no line information. In this case, addr2line reports '?'. Replace with 0 to guarantee consistent data for consumers. Reviewed-by: Manos Pitsidianakis <manos.pitsidianakis@linaro.org> Link: https://lore.kernel.org/qemu-devel/20260424194451.1439316-3-pierrick.bouvier@oss.qualcomm.com Signed-off-by: Pierrick Bouvier <pierrick.bouvier@oss.qualcomm.com>
Pierrick Bouvier committed
Apr 24, 2026 at 12:44 UTC
068076d4dfe29ca71626beaa8840c47c18eeb332
1 file changed
+4
-1
contrib/plugins/uftrace_symbols.py
+4
-1
@@ -70,7 +70,10 @@ def find_symbols_locations(elf_file, symbols):
70
file, line = out[i].split(':')
71
# addr2line may return 'line (discriminator [0-9]+)' sometimes,
72
# remove this to keep only line number.
73
- line = line.split(' ')[0]
73
+ if line == '?':
74
+ line = 0
75
+ else:
76
+ line = int(line.split(' ')[0])
77
s.set_loc(file, line)
78
79
class BinaryFile: