On 10/17/2010 12:06 PM, Nadav Har'El wrote:
An implementation of VMX needs to define a VMCS structure. This structure
is kept in guest memory, but is opaque to the guest (who can only read or
write it with VMX instructions).
This patch starts to define the VMCS structure which our nested VMX
implementation will present to L1. We call it "vmcs12", as it is the VMCS
that L1 keeps for its L2 guests. We will add more content to this structure
in later patches.
This patch also adds the notion (as required by the VMX spec) of L1's "current
VMCS", and finally includes utility functions for mapping the guest-allocated
VMCSs in host memory.
@@ -3467,6 +3521,11 @@ static int handle_vmoff(struct kvm_vcpu
to_vmx(vcpu)->nested.vmxon = false;
+ if(to_vmx(vcpu)->nested.current_vmptr != -1ull){
Missing whitespace after if and before {.
+ kunmap(to_vmx(vcpu)->nested.current_vmcs12_page);
+ nested_release_page(to_vmx(vcpu)->nested.current_vmcs12_page);
+ }
+
skip_emulated_instruction(vcpu);
return 1;
}
@@ -4170,6 +4229,10 @@ static void vmx_free_vcpu(struct kvm_vcp
struct vcpu_vmx *vmx = to_vmx(vcpu);
free_vpid(vmx);
+ if (vmx->nested.vmxon&& to_vmx(vcpu)->nested.current_vmptr != -1ull){
+ kunmap(to_vmx(vcpu)->nested.current_vmcs12_page);
+ nested_release_page(to_vmx(vcpu)->nested.current_vmcs12_page);
+ }
Duplication - helper?
--
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 [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html