[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <7f36d90ada07281dd0efa4339c991cb2ecec4da2.camel@infradead.org>
Date: Thu, 13 Mar 2025 19:58:10 +0000
From: David Woodhouse <dwmw2@...radead.org>
To: Ingo Molnar <mingo@...nel.org>
Cc: kexec@...ts.infradead.org, Thomas Gleixner <tglx@...utronix.de>, Ingo
Molnar <mingo@...hat.com>, Borislav Petkov <bp@...en8.de>, Dave Hansen
<dave.hansen@...ux.intel.com>, x86@...nel.org, "H . Peter Anvin"
<hpa@...or.com>, "Kirill A . Shutemov" <kirill.shutemov@...ux.intel.com>,
Kai Huang <kai.huang@...el.com>, Nikolay Borisov <nik.borisov@...e.com>,
linux-kernel@...r.kernel.org, Simon Horman <horms@...nel.org>, Dave Young
<dyoung@...hat.com>, Peter Zijlstra <peterz@...radead.org>,
jpoimboe@...nel.org, bsz@...zon.de
Subject: Re: [PATCH v7 0/8] x86/kexec: Add exception handling for
relocate_kernel
On Thu, 2025-03-13 at 11:54 +0100, Ingo Molnar wrote:
>
> * Ingo Molnar <mingo@...nel.org> wrote:
>
> > I applied the first 3 patches to tip:x86/boot for
> > phased-risk-reduction reasons, and because I had some questions and
> > suggestions starting at patch #4.
>
> So there's a new objtool build warning from the new exc_handler code:
>
> vmlinux.o: warning: objtool: exc_handler+0xe: early indirect call
>
> That's with a x86-64 defconfig + KVM enablement.
Reproduced that by going back to x86-64 defconfig.
vmlinux.o: warning: objtool: exc_handler+0xe: early indirect call
SYM_CODE_START_LOCAL_NOALIGN(exc_handler)
pushq %rax
2b6: 50 push %rax
pushq %rbx
2b7: 53 push %rbx
pushq %rcx
2b8: 51 push %rcx
pushq %rdx
2b9: 52 push %rdx
pushq %rsi
2ba: 56 push %rsi
/* Set up %rdx/%rsi for debug output */
pr_setup
2bb: 48 8d 35 6e ff ff ff lea -0x92(%rip),%rsi # 230 <pr_char>
/* rip and exception info */
print_reg 'E', 'x', 'c', ':', 0x28(%rsp)
2c2: b0 45 mov $0x45,%al
2c4: ff d6 call *%rsi
So it's the 'call *$rsi' instruction at 0x2c4, but that's annotated
with ANNOTATE_RETPOLINE_SAFE:
.macro print_reg a, b, c, d, r
movb $\a, %al
ANNOTATE_RETPOLINE_SAFE
call *%rsi
So what's wrong with that? What *more* do I have to tell objtool to
make it shut up and go away?
Am I missing some documentation which would tell me what it's actually
unhappy about? Because "early indirect call" doesn't enlighten me very
much, and reading tools/objtool/check.c doesn't either.
Download attachment "smime.p7s" of type "application/pkcs7-signature" (5069 bytes)
Powered by blists - more mailing lists