summaryrefslogtreecommitdiff
path: root/tools/objtool/klp-diff.c
diff options
context:
space:
mode:
authorJosh Poimboeuf <jpoimboe@kernel.org>2026-04-29 21:54:41 -0700
committerJosh Poimboeuf <jpoimboe@kernel.org>2026-05-04 21:16:02 -0700
commit5f49ec82b9f65507c262a6e3f1b53663f79eedce (patch)
treeb4a3194c240919530494093f9d024193bf0bd027 /tools/objtool/klp-diff.c
parent51e1dfce24c8f4b1cdfa614a43ee195088901eca (diff)
downloadlinux-next-5f49ec82b9f65507c262a6e3f1b53663f79eedce.tar.gz
linux-next-5f49ec82b9f65507c262a6e3f1b53663f79eedce.zip
objtool/klp: Fix reloc corruption in convert_reloc_sym_to_secsym()
Use the section symbol's index instead of the old symbol's index when updating the ELF relocation entry in convert_reloc_sym_to_secsym(). Found by Sashiko review. Acked-by: Song Liu <song@kernel.org> Signed-off-by: Josh Poimboeuf <jpoimboe@kernel.org>
Diffstat (limited to 'tools/objtool/klp-diff.c')
-rw-r--r--tools/objtool/klp-diff.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/tools/objtool/klp-diff.c b/tools/objtool/klp-diff.c
index ca87bcb9afa3..463b6daa5234 100644
--- a/tools/objtool/klp-diff.c
+++ b/tools/objtool/klp-diff.c
@@ -975,7 +975,7 @@ static int convert_reloc_sym_to_secsym(struct elf *elf, struct reloc *reloc)
return -1;
reloc->sym = sec->sym;
- set_reloc_sym(elf, reloc, sym->idx);
+ set_reloc_sym(elf, reloc, sec->sym->idx);
set_reloc_addend(elf, reloc, sym->offset + reloc_addend(reloc));
return 0;
}