> On Jan 28, 2018, at 12:44 PM, David Woodhouse <dw...@infradead.org> wrote:
> 
>> 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.

Hmm, you're probably right.

I would love to know what awful hack Intel did that resulted in these semantics.

> 
>> 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?
> 
> Why does it matter? We *have* confirmed, FWIW, that VMRESUME writing 1
> to IBRS as part of its MSR switch when it was already 1 is not
> optimised away and *is* treated as writing IBRS=1 again.

That's good news.

Reply via email to