diff options
author | Avi Kivity <avi@qumranet.com> | 2007-09-30 10:50:12 +0200 |
---|---|---|
committer | Avi Kivity <avi@qumranet.com> | 2008-01-30 17:52:49 +0200 |
commit | eae5ecb5b9043812968fae7ad9d74bf5e7a50245 (patch) | |
tree | 68af0cc24f0e878240109ab2b3f1dfa27b3f80ff /drivers/kvm/vmx.c | |
parent | b4c6abfef400c0f74d9b86a149a6719706cfdbbc (diff) | |
download | op-kernel-dev-eae5ecb5b9043812968fae7ad9d74bf5e7a50245.zip op-kernel-dev-eae5ecb5b9043812968fae7ad9d74bf5e7a50245.tar.gz |
KVM: VMX: Don't clear the vmcs if the vcpu is not loaded on any processor
Noted by Eddie Dong.
Signed-off-by: Avi Kivity <avi@qumranet.com>
Diffstat (limited to 'drivers/kvm/vmx.c')
-rw-r--r-- | drivers/kvm/vmx.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/kvm/vmx.c b/drivers/kvm/vmx.c index 27a3318..cc284420 100644 --- a/drivers/kvm/vmx.c +++ b/drivers/kvm/vmx.c @@ -225,7 +225,9 @@ static void __vcpu_clear(void *arg) static void vcpu_clear(struct vcpu_vmx *vmx) { - if (vmx->vcpu.cpu != raw_smp_processor_id() && vmx->vcpu.cpu != -1) + if (vmx->vcpu.cpu == -1) + return; + if (vmx->vcpu.cpu != raw_smp_processor_id()) smp_call_function_single(vmx->vcpu.cpu, __vcpu_clear, vmx, 0, 1); else |