On Wed, 2018-01-31 at 13:18 -0800, Jim Mattson wrote: > On Wed, Jan 31, 2018 at 12:21 PM, David Woodhouse wrote: > > > > > Reading and writing this MSR is expensive. And if it's yielded to the > > guest in the MSR bitmap, that means we have to save its value on vmexit > > and set it back to zero. > > Agreed. But my point is that if it's not yielded to the guest in the > MSR bitmap, then we don't have to save its value on VM-exit and set it > back to zero. The vmcs02 MSR bitmap is reconstructed on every L1->L2 > transition. Sometimes, it will yield the MSR and sometimes it won't. Strictly: if SPEC_CTRL is not already set to 1 *and* hasn't been yielded to the guest in the MSR bitmap, then we don't have to set it back to zero. If L1 decides it's *always* going to trap and never pass through, but the value is already set to non-zero, we need to get that case right.
Attachment:
smime.p7s
Description: S/MIME cryptographic signature