aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/kvm/vmx.c
diff options
context:
space:
mode:
authorAvi Kivity <avi@qumranet.com>2007-09-30 04:50:12 -0400
committerAvi Kivity <avi@qumranet.com>2008-01-30 10:52:49 -0500
commiteae5ecb5b9043812968fae7ad9d74bf5e7a50245 (patch)
tree68af0cc24f0e878240109ab2b3f1dfa27b3f80ff /drivers/kvm/vmx.c
parentb4c6abfef400c0f74d9b86a149a6719706cfdbbc (diff)
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.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/kvm/vmx.c b/drivers/kvm/vmx.c
index 27a3318fa6c2..cc2844203c24 100644
--- a/drivers/kvm/vmx.c
+++ b/drivers/kvm/vmx.c
@@ -225,7 +225,9 @@ static void __vcpu_clear(void *arg)
225 225
226static void vcpu_clear(struct vcpu_vmx *vmx) 226static void vcpu_clear(struct vcpu_vmx *vmx)
227{ 227{
228 if (vmx->vcpu.cpu != raw_smp_processor_id() && vmx->vcpu.cpu != -1) 228 if (vmx->vcpu.cpu == -1)
229 return;
230 if (vmx->vcpu.cpu != raw_smp_processor_id())
229 smp_call_function_single(vmx->vcpu.cpu, __vcpu_clear, 231 smp_call_function_single(vmx->vcpu.cpu, __vcpu_clear,
230 vmx, 0, 1); 232 vmx, 0, 1);
231 else 233 else