[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20220301231303.pqexbxkpte6yjiww@treble>
Date: Tue, 1 Mar 2022 15:13:03 -0800
From: Josh Poimboeuf <jpoimboe@...hat.com>
To: Peter Zijlstra <peterz@...radead.org>
Cc: "Edgecombe, Rick P" <rick.p.edgecombe@...el.com>,
"hjl.tools@...il.com" <hjl.tools@...il.com>,
"x86@...nel.org" <x86@...nel.org>,
"joao@...rdrivepizza.com" <joao@...rdrivepizza.com>,
"Cooper, Andrew" <andrew.cooper3@...rix.com>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"keescook@...omium.org" <keescook@...omium.org>,
"rostedt@...dmis.org" <rostedt@...dmis.org>,
"samitolvanen@...gle.com" <samitolvanen@...gle.com>,
"mark.rutland@....com" <mark.rutland@....com>,
"alexei.starovoitov@...il.com" <alexei.starovoitov@...il.com>,
"Milburn, Alyssa" <alyssa.milburn@...el.com>,
"mhiramat@...nel.org" <mhiramat@...nel.org>,
"mbenes@...e.cz" <mbenes@...e.cz>,
"ndesaulniers@...gle.com" <ndesaulniers@...gle.com>
Subject: Re: [PATCH v2 18/39] x86/ibt: Add IBT feature, MSR and #CP handling
On Tue, Mar 01, 2022 at 10:02:45PM +0100, Peter Zijlstra wrote:
> On Tue, Mar 01, 2022 at 04:14:42PM +0100, Peter Zijlstra wrote:
>
> > Something like so?
> >
> > diff --git a/arch/x86/kernel/relocate_kernel_64.S b/arch/x86/kernel/relocate_kernel_64.S
> > index 399f075ccdc4..5b65f6ec5ee6 100644
> > --- a/arch/x86/kernel/relocate_kernel_64.S
> > +++ b/arch/x86/kernel/relocate_kernel_64.S
> > @@ -114,6 +114,14 @@ SYM_CODE_START_LOCAL_NOALIGN(identity_mapped)
> > /* store the start address on the stack */
> > pushq %rdx
> >
> > + /*
> > + * Clear X86_CR4_CET (if it was set) such that we can clear CR0_WP
> > + * below.
> > + */
> > + movq %cr4, %rax
> > + andq $~(X86_CR4_CET), %rax
> > + movq %rax, %cr4
> > +
> > /*
> > * Set cr0 to a known state:
> > * - Paging enabled
>
> I *think* it worked, I 'apt install kexec-tools' and copied the magic
> commands Josh gave over IRC and the machine went and came back real
> quick.
>
> Lacking useful console I can't say much more.
>
> I pushed out a version with these things on.
I just used your latest git tree, kexec into a non-IBT kernel worked for
me as well.
--
Josh
Powered by blists - more mailing lists