On 05/23/2011 05:10 PM, Nadav Har'El wrote:
On Mon, May 23, 2011, Avi Kivity wrote about "Re: [PATCH 0/30] nVMX: Nested VMX, v9": > I think for Intel there is no hidden state apart from in-guest-mode > (there is the VMPTR, but it is an actual register accessible via > instructions). is_guest_mode(vcpu), vmx->nested.vmxon, vmx->nested.current_vmptr are the only three things I can think of. Vmxon is actually more than a boolean (there's also a vmxon pointer). What do you mean by the current_vmptr being available through an instruction? It is (VMPTRST), but this would be an instruction run on L1 (emulated by L0). How would L0's user space use that instruction?
I mean that it is an architectural register rather than "hidden state". It doesn't mean that L0 user space can use it.
> I agree it's a benefit. But I don't like making the fake vmexit part of > live migration, if it turns out the wrong choice it's hard to undo it. If you don't do this "fake vmexit", you'll need to migrate both vmcs01 and the current vmcs02 - the fact that vmcs12 is in guest memory will not be enough, because vmcs02 isn't copied back to vmcs12 until the nested exit.
vmcs01 and vmcs02 will both be generated from vmcs12. -- error compiling committee.c: too many arguments to function -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html