summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJidong Xiao2014-06-04 03:10:06 +0200
committerPaolo Bonzini2014-06-04 09:12:04 +0200
commit79b6f2f651d64a122dd647c1456635d5a6a176ac (patch)
tree451730ed96c665b94dc936be22f7f05833650563
parentkvmclock: Ensure proper env->tsc value for kvmclock_current_nsec calculation (diff)
downloadqemu-79b6f2f651d64a122dd647c1456635d5a6a176ac.tar.gz
qemu-79b6f2f651d64a122dd647c1456635d5a6a176ac.tar.xz
qemu-79b6f2f651d64a122dd647c1456635d5a6a176ac.zip
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];