aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJidong Xiao <jidong.xiao@gmail.com>2014-06-03 21:10:06 -0400
committerPaolo Bonzini <pbonzini@redhat.com>2014-06-04 09:12:04 +0200
commit79b6f2f651d64a122dd647c1456635d5a6a176ac (patch)
tree451730ed96c665b94dc936be22f7f05833650563
parent9b1786829aefb83f37a8f3135e3ea91c56001b56 (diff)
kvm: Fix eax for cpuid leaf 0x40000000
Since Linux kernel 3.5, KVM has documented eax for leaf 0x40000000 to be KVM_CPUID_FEATURES: https://github.com/torvalds/linux/commit/57c22e5f35aa4b9b2fe11f73f3e62bbf9ef36190 But qemu still tries to set it to 0. It would be better to make qemu and kvm consistent. This patch just fixes this issue. Signed-off-by: Jidong Xiao <jidong.xiao@gmail.com> [Include kvm_base in the value. - Paolo] Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
-rw-r--r--target-i386/kvm.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/target-i386/kvm.c b/target-i386/kvm.c
index 40cd4b84af..4bf0ac9e76 100644
--- a/target-i386/kvm.c
+++ b/target-i386/kvm.c
@@ -532,7 +532,7 @@ int kvm_arch_init_vcpu(CPUState *cs)
memcpy(signature, "KVMKVMKVM\0\0\0", 12);
c = &cpuid_data.entries[cpuid_i++];
c->function = KVM_CPUID_SIGNATURE | kvm_base;
- c->eax = 0;
+ c->eax = KVM_CPUID_FEATURES | kvm_base;
c->ebx = signature[0];
c->ecx = signature[1];
c->edx = signature[2];