RE: [PATCH] x86: vmx: Allow direct access to MSR_IA32_SPEC_CTRL

From: Van De Ven, Arjan
Date: Sun Jan 28 2018 - 16:41:35 EST


>
> On Sun, 2018-01-28 at 12:40 -0800, Andy Lutomirski wrote:
> >
> > Do you mean that the host would intercept the guest WRMSR and do
> > WRMSR itself? I would suggest that doing so is inconsistent with the
> > docs. As specified, doing WRMSR to write 1 to IBRS does *not*
> > protect the guest.
>
> I believe it does. Guest kernel is protected from any guest userspace
> predictions learned before IBRS was last set to 1 in *any* mode,
> including host.

the specification requires you to write a 1 on each transition to higher privilege.


>
> > For that matter, what are the semantics of VMRESUME doing a write to
> > IBRS as part of its MSR switch? Is it treated as IBRS=1 from guest
> > context?

the guest ring 3 wouldn't have had time to do anything evil in the mean time so the vmresume write is valid. (anything else would be unworkable)