From patchwork Fri Oct 12 19:56:15 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [v7, 10/17] target-i386: Use Hypervisor level in -machine pc, accel=kvm. Date: Fri, 12 Oct 2012 09:56:15 -0000 From: Don Slutz X-Patchwork-Id: 191209 Message-Id: <1350071782-23078-11-git-send-email-Don@CloudSwitch.com> To: , , , , , , , , Cc: Don Slutz Part of "target-i386: Add way to expose VMWare CPUID" Also known as Paravirtualization level. QEMU knows this is KVM_CPUID_SIGNATURE (0x40000000). Signed-off-by: Don Slutz --- target-i386/kvm.c | 8 ++++++-- 1 files changed, 6 insertions(+), 2 deletions(-) diff --git a/target-i386/kvm.c b/target-i386/kvm.c index 5b18383..30963e1 100644 --- a/target-i386/kvm.c +++ b/target-i386/kvm.c @@ -392,10 +392,14 @@ int kvm_arch_init_vcpu(CPUX86State *env) c->function = KVM_CPUID_SIGNATURE; if (!hyperv_enabled()) { memcpy(signature, "KVMKVMKVM\0\0\0", 12); - c->eax = 0; + if (!env->cpuid_hv_level_set) { + c->eax = 0; + } else { + c->eax = env->cpuid_hv_level; + } } else { memcpy(signature, "Microsoft Hv", 12); - c->eax = HYPERV_CPUID_MIN; + c->eax = env->cpuid_hv_level; } c->ebx = signature[0]; c->ecx = signature[1];