Use host CPUID processor info

From: Dong, Eddie <hidden>
Date: 2007-07-07 06:47:34
Subsystem: the rest · Maintainer: Linus Torvalds

Use host cpu model name, type, family, Model, stepping for guest.

Against head.

Signed-off-by: Yaozu (Eddie) Dong <redacted>
diff --git a/qemu/qemu-kvm.c b/qemu/qemu-kvm.c
index bacdb37..1b86a13 100644
--- a/qemu/qemu-kvm.c
+++ b/qemu/qemu-kvm.c
@@ -756,6 +755,10 @@ static void do_cpuid_ent(struct kvm_cpuid_entry *e,
uint32_t function)
        if ((h_edx & 0x00100000) == 0)
            e->edx &= ~0x00100000u;
     }
+    if (function == 0x80000002 || function == 0x80000003
+       || function == 0x80000004) {
+       host_cpuid(function, &e->eax, &e->ebx, &e->ecx, &e->edx);
+    }
     // sysenter isn't supported on compatibility mode on AMD.  and
syscall
     // isn't supported in compatibility mode on Intel.  so advertise
the
     // actuall cpu, and say goodbye to migration between different
vendors
@@ -768,6 +771,9 @@ static void do_cpuid_ent(struct kvm_cpuid_entry *e,
uint32_t function)
        e->ecx = bcd[1];
        e->edx = bcd[2];
     }
+    if (function == 0x1) {
+       host_cpuid(function, &e->eax, NULL, NULL, NULL);
+    }
 }

 int kvm_qemu_init_env(CPUState *cenv)

-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help