diff options
author | Arnd Bergmann <arnd@arndb.de> | 2023-03-06 11:14:51 +0100 |
---|---|---|
committer | Masahiro Yamada <masahiroy@kernel.org> | 2023-04-17 04:03:56 +0200 |
commit | bea5b74504742f1b51b815bcaf9a70bddbc49ce3 (patch) | |
tree | ebcb915b357f5f6000f3982030d33380327bcd80 /scripts/kallsyms.c | |
parent | Linux 6.3-rc7 (diff) | |
download | linux-bea5b74504742f1b51b815bcaf9a70bddbc49ce3.tar.xz linux-bea5b74504742f1b51b815bcaf9a70bddbc49ce3.zip |
kallsyms: expand symbol name into comment for debugging
The assembler output of kallsyms.c is not meant for people to understand,
and is generally not helpful when debugging "Inconsistent kallsyms data"
warnings. I have previously struggled with these, but found it helpful
to list which symbols changed between the first and second pass in the
.tmp_vmlinux.kallsyms*.S files.
As this file is preprocessed, it's possible to add a C-style multiline
comment with the full type/name tuple.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Diffstat (limited to 'scripts/kallsyms.c')
-rw-r--r-- | scripts/kallsyms.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/scripts/kallsyms.c b/scripts/kallsyms.c index a239a87e7bec..ea1e3d3aaa6b 100644 --- a/scripts/kallsyms.c +++ b/scripts/kallsyms.c @@ -525,7 +525,8 @@ static void write_src(void) table[i]->addr); exit(EXIT_FAILURE); } - printf("\t.long\t%#x\n", (int)offset); + expand_symbol(table[i]->sym, table[i]->len, buf); + printf("\t.long\t%#x /* %s */\n", (int)offset, buf); } else if (!symbol_absolute(table[i])) { output_address(table[i]->addr); } else { |