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

From: Alexander Graf
Date: Mon Jun 17 2019 - 03:43:06 EST



On 14.06.19 16:21, Thomas Gleixner 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.


Would that mean that with Meltdown affected CPUs we open speculation attacks against the mmlocal memory from KVM user space?


Alex