KVM: nVMX: Add VMX to list of supported cpuid features
authorNadav Har'El <nyh@il.ibm.com>
Wed, 25 May 2011 20:16:10 +0000 (23:16 +0300)
committerAvi Kivity <avi@redhat.com>
Tue, 12 Jul 2011 08:45:19 +0000 (11:45 +0300)
If the "nested" module option is enabled, add the "VMX" CPU feature to the
list of CPU features KVM advertises with the KVM_GET_SUPPORTED_CPUID ioctl.

Qemu uses this ioctl, and intersects KVM's list with its own list of desired
cpu features (depending on the -cpu option given to qemu) to determine the
final list of features presented to the guest.

Signed-off-by: Nadav Har'El <nyh@il.ibm.com>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
arch/x86/kvm/vmx.c

index afc1f06907ce340cb0c5cc570941cda140d8bc67..a600fd7795f15c7ca862e74dc7fbbceb8d38b46e 100644 (file)
@@ -6299,6 +6299,8 @@ static void vmx_cpuid_update(struct kvm_vcpu *vcpu)
 
 static void vmx_set_supported_cpuid(u32 func, struct kvm_cpuid_entry2 *entry)
 {
+       if (func == 1 && nested)
+               entry->ecx |= bit(X86_FEATURE_VMX);
 }
 
 /*