OSDN Git Service

target-i386: Clear KVM CPUID features if KVM is disabled
authorEduardo Habkost <ehabkost@redhat.com>
Mon, 26 Sep 2016 22:11:14 +0000 (19:11 -0300)
committerEduardo Habkost <ehabkost@redhat.com>
Tue, 27 Sep 2016 20:03:34 +0000 (17:03 -0300)
This will ensure all checks for features[FEAT_KVM] in the code
will be correct in case the KVM CPUID leaf is completely
disabled.

Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
target-i386/cpu.c

index ad09246..333309b 100644 (file)
@@ -3038,6 +3038,10 @@ static void x86_cpu_realizefn(DeviceState *dev, Error **errp)
         cpu->env.features[w] &= ~minus_features[w];
     }
 
+    if (!kvm_enabled() || !cpu->expose_kvm) {
+        env->features[FEAT_KVM] = 0;
+    }
+
     x86_cpu_enable_xsave_components(cpu);
 
     /* CPUID[EAX=7,ECX=0].EBX always increased level automatically: */