Re: [RFC 00/10] Process-local memory allocations for hiding KVM secrets

From: Andy Lutomirski
Date: Sun Jun 16 2019 - 18:23:05 EST


On Fri, Jun 14, 2019 at 7:21 AM Thomas Gleixner <tglx@xxxxxxxxxxxxx> wrote:
>
> On Wed, 12 Jun 2019, Andy Lutomirski wrote:
> > > On Jun 12, 2019, at 12:55 PM, Dave Hansen <dave.hansen@xxxxxxxxx> wrote:
> > >
> > >> On 6/12/19 10:08 AM, Marius Hillenbrand wrote:
> > >> This patch series proposes to introduce a region for what we call
> > >> process-local memory into the kernel's virtual address space.
> > >
> > > It might be fun to cc some x86 folks on this series. They might have
> > > some relevant opinions. ;)
> > >
> > > A few high-level questions:
> > >
> > > Why go to all this trouble to hide guest state like registers if all the
> > > guest data itself is still mapped?
> > >
> > > Where's the context-switching code? Did I just miss it?
> > >
> > > We've discussed having per-cpu page tables where a given PGD is only in
> > > use from one CPU at a time. I *think* this scheme still works in such a
> > > case, it just adds one more PGD entry that would have to context-switched.
> >
> > Fair warning: Linus is on record as absolutely hating this idea. He might
> > change his mind, but itâs an uphill battle.
>
> Yes I know, but as a benefit we could get rid of all the GSBASE horrors in
> the entry code as we could just put the percpu space into the local PGD.
>

I have personally suggested this to Linus on a couple of occasions,
and he seemed quite skeptical.