[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <230aacb0ca0d57581f9350f96390933646f203e4.camel@amazon.co.uk>
Date: Tue, 5 Nov 2024 20:38:10 +0000
From: "Woodhouse, David" <dwmw@...zon.co.uk>
To: "peterz@...radead.org" <peterz@...radead.org>, "kexec@...ts.infradead.org"
<kexec@...ts.infradead.org>, "jpoimboe@...nel.org" <jpoimboe@...nel.org>
CC: "horms@...nel.org" <horms@...nel.org>, "x86@...nel.org" <x86@...nel.org>,
"bp@...en8.de" <bp@...en8.de>, "hpa@...or.com" <hpa@...or.com>,
"mingo@...hat.com" <mingo@...hat.com>, "tglx@...utronix.de"
<tglx@...utronix.de>, "kai.huang@...el.com" <kai.huang@...el.com>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"kirill.shutemov@...ux.intel.com" <kirill.shutemov@...ux.intel.com>,
"nik.borisov@...e.com" <nik.borisov@...e.com>, "dave.hansen@...ux.intel.com"
<dave.hansen@...ux.intel.com>
Subject: Re: [RFC PATCH 6/7] x86/kexec: Debugging support: Dump registers on
exception
On Sun, 2024-11-03 at 05:35 +0000, David Woodhouse wrote:
>
> +
> +/* Print the byte in %bl, clobber %rax */
> +SYM_CODE_START_LOCAL_NOALIGN(pr_byte)
> + movb %bl, %al
> + nop
> + andb $0x0f, %al
> + addb $0x30, %al
> + cmpb $0x3a, %al
> + jb 1f
> + addb $('a' - '0' - 10), %al
> +1: pr_char
> + ANNOTATE_UNRET_SAFE
> + ret
> +SYM_CODE_END(pr_byte)
> +
Obviously that function name (and comment) are wrong; fixed in my tree.
at
https://git.infradead.org/users/dwmw2/linux.git/shortlog/refs/heads/kexec-debug
This function (and also pr_qword) are also what objtool is complaining
about:
vmlinux.o: warning: objtool: relocate_range+0x2f6: unreachable instruction
vmlinux.o: warning: objtool: relocate_range+0x305: unreachable instruction
I don't quite see why, because pr_qword() quite blatantly calls
pr_nyblle(), as it's now named. And exc_handler() repeatedly calls
pr_qword().
But most of the objtool annotations I've added here were just to make
it shut up and build, without much though. Peter, Josh, any chance you
can help me fix it up please?
It would also be really useful if objtool would let me have data inside
a "code" segment, without complaining that it can't decode it as
instructions — and without also failing to decode the first instruction
of the *subsequent* function. I've put the GDT at the end to work
around that, but it's a bit nasty.
Download attachment "smime.p7s" of type "application/pkcs7-signature" (5957 bytes)
Amazon Development Centre (London) Ltd. Registered in England and Wales with registration number 04543232 with its registered office at 1 Principal Place, Worship Street, London EC2A 2FA, United Kingdom.
Content of type "text/html" skipped
Powered by blists - more mailing lists