summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorJosh Poimboeuf <jpoimboe@kernel.org>2025-03-27 22:04:21 -0700
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2025-04-10 14:44:36 +0200
commit556b6ccf0b9dbac2d5b4676cdcb4ba8567b44b0b (patch)
tree018feca9c6ac3b33977a8e6dd7c8bdd94eae673a /tools
parent013a605afc902046772a6b1cef49e87b9377d095 (diff)
downloadlinux-556b6ccf0b9dbac2d5b4676cdcb4ba8567b44b0b.tar.gz
linux-556b6ccf0b9dbac2d5b4676cdcb4ba8567b44b0b.tar.bz2
linux-556b6ccf0b9dbac2d5b4676cdcb4ba8567b44b0b.zip
objtool: Fix segfault in ignore_unreachable_insn()
[ Upstream commit 69d41d6dafff0967565b971d950bd10443e4076c ] Check 'prev_insn' before dereferencing it. Fixes: bd841d6154f5 ("objtool: Fix CONFIG_UBSAN_TRAP unreachable warnings") Reported-by: Arnd Bergmann <arnd@arndb.de> Reported-by: Ingo Molnar <mingo@kernel.org> Signed-off-by: Josh Poimboeuf <jpoimboe@kernel.org> Signed-off-by: Ingo Molnar <mingo@kernel.org> Link: https://lore.kernel.org/r/5df4ff89c9e4b9e788b77b0531234ffa7ba03e9e.1743136205.git.jpoimboe@kernel.org Closes: https://lore.kernel.org/d86b4cc6-0b97-4095-8793-a7384410b8ab@app.fastmail.com Closes: https://lore.kernel.org/Z-V_rruKY0-36pqA@gmail.com Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'tools')
-rw-r--r--tools/objtool/check.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/tools/objtool/check.c b/tools/objtool/check.c
index 813e708c1649..aa071017c325 100644
--- a/tools/objtool/check.c
+++ b/tools/objtool/check.c
@@ -4009,7 +4009,7 @@ static bool ignore_unreachable_insn(struct objtool_file *file, struct instructio
* It may also insert a UD2 after calling a __noreturn function.
*/
prev_insn = prev_insn_same_sec(file, insn);
- if (prev_insn->dead_end &&
+ if (prev_insn && prev_insn->dead_end &&
(insn->type == INSN_BUG ||
(insn->type == INSN_JUMP_UNCONDITIONAL &&
insn->jump_dest && insn->jump_dest->type == INSN_BUG)))