summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2021-11-14 10:30:17 -0800
committerLinus Torvalds <torvalds@linux-foundation.org>2021-11-14 10:30:17 -0800
commit218cc8b860a255ce7f1a03ff3ec70953c423d27d (patch)
treefbd49e5816e523b126a75699c383033128b2e4a5 /tools
parentfc661f2dcb7e41dcda9ae862efb822bb2f461646 (diff)
parent2105a92748e83e2e3ee6be539da959706bbb3898 (diff)
Merge tag 'locking-urgent-2021-11-14' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull x86 static call update from Thomas Gleixner: "A single fix for static calls to make the trampoline patching more robust by placing explicit signature bytes after the call trampoline to prevent patching random other jumps like the CFI jump table entries" * tag 'locking-urgent-2021-11-14' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: static_call,x86: Robustify trampoline patching
Diffstat (limited to 'tools')
-rw-r--r--tools/objtool/check.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/tools/objtool/check.c b/tools/objtool/check.c
index add39902166d..21735829b860 100644
--- a/tools/objtool/check.c
+++ b/tools/objtool/check.c
@@ -3310,6 +3310,9 @@ static bool ignore_unreachable_insn(struct objtool_file *file, struct instructio
if (!insn->func)
return false;
+ if (insn->func->static_call_tramp)
+ return true;
+
/*
* CONFIG_UBSAN_TRAP inserts a UD2 when it sees
* __builtin_unreachable(). The BUG() macro has an unreachable() after