summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJan Kiszka <jan.kiszka@siemens.com>2015-05-24 17:22:38 +0200
committerPaolo Bonzini <pbonzini@redhat.com>2015-05-28 10:43:37 +0200
commite453aa0f7e7b10135d7a84742722f5fc799a3df9 (patch)
tree0f5e1e9d0fdfb5e2935fab2f0e9215a7753915af
parentKVM: x86: preserve x2APIC LDR on INIT (diff)
downloadlinux-e453aa0f7e7b10135d7a84742722f5fc799a3df9.tar.xz
linux-e453aa0f7e7b10135d7a84742722f5fc799a3df9.zip
KVM: x86: Allow ARAT CPU feature
There is no reason to deny this feature to guests. We are emulating the APIC timer, thus are exposing it without stops in power-saving states. Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
-rw-r--r--arch/x86/kvm/cpuid.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/arch/x86/kvm/cpuid.c b/arch/x86/kvm/cpuid.c
index 92a74a0428aa..9dadf8d67873 100644
--- a/arch/x86/kvm/cpuid.c
+++ b/arch/x86/kvm/cpuid.c
@@ -415,6 +415,12 @@ static inline int __do_cpuid_ent(struct kvm_cpuid_entry2 *entry, u32 function,
}
break;
}
+ case 6: /* Thermal management */
+ entry->eax = 0x4; /* allow ARAT */
+ entry->ebx = 0;
+ entry->ecx = 0;
+ entry->edx = 0;
+ break;
case 7: {
entry->flags |= KVM_CPUID_FLAG_SIGNIFCANT_INDEX;
/* Mask ebx against host capability word 9 */
@@ -591,7 +597,6 @@ static inline int __do_cpuid_ent(struct kvm_cpuid_entry2 *entry, u32 function,
break;
case 3: /* Processor serial number */
case 5: /* MONITOR/MWAIT */
- case 6: /* Thermal management */
case 0xC0000002:
case 0xC0000003:
case 0xC0000004: