aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2023-09-17 10:59:37 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2023-09-17 10:59:37 -0700
commite54ca3c81f2d81e4de3339873256e568f60ce076 (patch)
tree063bf096ee4121734ff8a73bebc4a28dcb52924f
parent99a73f9e8d65600fda224647c8520e184db8506c (diff)
parent72178d5d1a38dd185d1db15f177f2d122ef10d9b (diff)
downloadlinux-e54ca3c81f2d81e4de3339873256e568f60ce076.tar.gz
Merge tag 'objtool-urgent-2023-09-17' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull objtool fix from Ingo Molnar: "Fix a cold functions related false-positive objtool warning that triggers on Clang" * tag 'objtool-urgent-2023-09-17' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: objtool: Fix _THIS_IP_ detection for cold functions
-rw-r--r--tools/objtool/check.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/tools/objtool/check.c b/tools/objtool/check.c
index 1384090530dbe3..e308d1ba664ef9 100644
--- a/tools/objtool/check.c
+++ b/tools/objtool/check.c
@@ -4333,7 +4333,8 @@ static int validate_ibt_insn(struct objtool_file *file, struct instruction *insn
continue;
}
- if (insn_func(dest) && insn_func(dest) == insn_func(insn)) {
+ if (insn_func(dest) && insn_func(insn) &&
+ insn_func(dest)->pfunc == insn_func(insn)->pfunc) {
/*
* Anything from->to self is either _THIS_IP_ or
* IRET-to-self.