| From a57732be8845352aee40c3651c1996161154a812 Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Wed, 12 Apr 2023 10:29:01 -0700 |
| Subject: Revert "objtool: Support addition to set CFA base" |
| |
| From: Josh Poimboeuf <jpoimboe@kernel.org> |
| |
| [ Upstream commit e18398e80c73e3cc7d9c3d2e0bc06a4af8f4f1cb ] |
| |
| Commit 468af56a7bba ("objtool: Support addition to set CFA base") was |
| added as a preparatory patch for arm64 support, but that support never |
| came. It triggers a false positive warning on x86, so just revert it |
| for now. |
| |
| Fixes the following warning: |
| |
| vmlinux.o: warning: objtool: cdce925_regmap_i2c_write+0xdb: stack state mismatch: cfa1=4+120 cfa2=5+40 |
| |
| Fixes: 468af56a7bba ("objtool: Support addition to set CFA base") |
| Reported-by: kernel test robot <lkp@intel.com> |
| Signed-off-by: Josh Poimboeuf <jpoimboe@kernel.org> |
| Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> |
| Link: https://lore.kernel.org/oe-kbuild-all/202304080538.j5G6h1AB-lkp@intel.com/ |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| tools/objtool/check.c | 11 ----------- |
| 1 file changed, 11 deletions(-) |
| |
| diff --git a/tools/objtool/check.c b/tools/objtool/check.c |
| index 730b49e255e44..c2c350933a237 100644 |
| --- a/tools/objtool/check.c |
| +++ b/tools/objtool/check.c |
| @@ -2757,17 +2757,6 @@ static int update_cfi_state(struct instruction *insn, |
| break; |
| } |
| |
| - if (!cfi->drap && op->src.reg == CFI_SP && |
| - op->dest.reg == CFI_BP && cfa->base == CFI_SP && |
| - check_reg_frame_pos(®s[CFI_BP], -cfa->offset + op->src.offset)) { |
| - |
| - /* lea disp(%rsp), %rbp */ |
| - cfa->base = CFI_BP; |
| - cfa->offset -= op->src.offset; |
| - cfi->bp_scratch = false; |
| - break; |
| - } |
| - |
| if (op->src.reg == CFI_SP && cfa->base == CFI_SP) { |
| |
| /* drap: lea disp(%rsp), %drap */ |
| -- |
| 2.39.2 |
| |