[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <5d385e4c06ebd218cfdc20ef4f208ee4abcfa252.camel@infradead.org>
Date: Mon, 25 Nov 2024 18:53:28 +0000
From: David Woodhouse <dwmw2@...radead.org>
To: Dave Hansen <dave.hansen@...el.com>, kexec@...ts.infradead.org,
Schönherr, "Jan H."
<jschoenh@...zon.de>, Rik van Riel <riel@...riel.com>
Cc: 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: [RFC PATCH] x86/mm: Disable PTI for kernel_ident_mapping_init()
On Mon, 2024-11-25 at 10:31 -0800, Dave Hansen wrote:
> On 11/25/24 09:05, David Woodhouse wrote:
> > Not sure I like this very much, but it works, and mirrors what
> > arch/x86/boot/compressed/ident_map_64.c already does.
>
> I don't like it much, either.
>
> arch/x86/boot/compressed/ is already on the road to sharing no code with
> the core kernel and it's full of horrors. It should be an example of
> what *not* to do. ;)
>
> I think we have a lot of software-available space in the page table
> pointer entries. What would folks think if we set a special bit in those
> p4d entries that said:
>
> "I don't need to be propagated to
> the user portion of the page tables."
>
> It would obviously get set in this code that you're trying to fix. It
> might _also_ be able to be set in in "_USR", like here:
>
> #define _KERNPG_TABLE_NOENC (__PP|__RW| 0|___A| 0|___D| 0| 0)
> #define _PAGE_TABLE_NOENC (__PP|__RW|_USR|___A| 0|___D| 0| 0)
>
> like:
>
> #define _USR _PAGE_USER|_PAGE_SW_WHATEVER
In fact, do we even need a separate bit? Any PTE without the _PAGE_USER
bit set clearly doesn't need to be mirrored into the user page
tables...?
Download attachment "smime.p7s" of type "application/pkcs7-signature" (5965 bytes)
Powered by blists - more mailing lists