Re: [tip: objtool/core] objtool/klp: Add .klp.symid for sympos disambiguation
From: sashiko-bot@kernel.org
Date: 2026-08-03 06:12:15
Also in:
lkml
Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider: - [Low] The `.exitcall.exit` section is discarded during the final vmlinux link, but `klp_create_symid_sections` incorrectly generates `.klp.symid` relocations to duplicate static symbols within it. --
--- Patch [1]: [tip: objtool/core] objtool/klp: Add .klp.symid for sympos disambiguation ---commit 95a71e72a77916e00e9b21eb4e2fc9a9e4c3258d Author: Josh Poimboeuf [off-list ref] Date: Mon Aug 3 05:49:39 2026 +0000 objtool/klp: Add .klp.symid for sympos disambiguation Livepatch identifies a duplicate-named symbol by its position (sympos) among same-named kallsyms entries, which for vmlinux are counted in ascending address order in the final linked kernel. This commit adds a new .klp.symid section to bridge the gap and correlate symbols between vmlinux.o and vmlinux. Link: https://patch.msgid.link/64d50f077b569f47883c015cdb7079edb068efe8.1785727106.git.jpoimboe@kernel.org
quoted hunk ↗ jump to hunk
diff --git a/tools/objtool/klp-symid.c b/tools/objtool/klp-symid.c new file mode 100644 index 0000000000000..cf188cdfa6079 --- /dev/null +++ b/tools/objtool/klp-symid.c
[ ... ]
+static const char * const discarded_secs[] = {
+ ".discard",
+ ".modinfo",
+ "__tracepoint_check",
+};[Severity: Low] Does this list need to include ".exitcall.exit"? When built-in components use module_exit() with identical function names (like sm4_exit in multiple x86 crypto modules), duplicate static variables are created in the .exitcall.exit section. Because this section is missing from discarded_secs[], symid_needed() generates R_ABS64 relocations in .klp.symid to these symbols. Since .exitcall.exit is unconditionally discarded by the linker during the final vmlinux link, this can cause a fatal linker error: ".klp.symid refers to discarded section .exitcall.exit". -- Sashiko AI review · https://sashiko.dev/#/patchset/178573617913.1210945.4137827646322421739.tip-bot2@tip-bot2?part=1