KVM: nVMX: Fix returned value of MSR_IA32_VMX_VMCS_ENUM
authorJan Kiszka <jan.kiszka@siemens.com>
Mon, 16 Jun 2014 11:59:44 +0000 (13:59 +0200)
committerPaolo Bonzini <pbonzini@redhat.com>
Thu, 19 Jun 2014 10:52:13 +0000 (12:52 +0200)
Many real CPUs get this wrong as well, but ours is totally off: bits 9:1
define the highest index value.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
arch/x86/kvm/vmx.c

index b93e2ae2bb628adc5a23f2fcd3f5bce085f92e71..a717c13b9466ded9d4e1a869fcc76ac63d676dd2 100644 (file)
@@ -2461,7 +2461,7 @@ static int vmx_get_vmx_msr(struct kvm_vcpu *vcpu, u32 msr_index, u64 *pdata)
                *pdata = -1ULL;
                break;
        case MSR_IA32_VMX_VMCS_ENUM:
-               *pdata = 0x1f;
+               *pdata = 0x2e; /* highest index: VMX_PREEMPTION_TIMER_VALUE */
                break;
        case MSR_IA32_VMX_PROCBASED_CTLS2:
                *pdata = vmx_control_msr(nested_vmx_secondary_ctls_low,