[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 1/4] convert cpuid registration to KVM_SET_CPUID2
From: |
Glauber Costa |
Subject: |
[Qemu-devel] [PATCH 1/4] convert cpuid registration to KVM_SET_CPUID2 |
Date: |
Thu, 29 Jan 2009 12:19:26 -0500 |
Use KVM_SET_CPUID2 instead of KVM_SET_CPUID. This
will allow us to do registration of cpuid leaves without
multiple calls to the kernel in the future.
Signed-off-by: Glauber Costa <address@hidden>
---
target-i386/kvm.c | 10 +++++-----
1 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/target-i386/kvm.c b/target-i386/kvm.c
index 2412ae4..729568c 100644
--- a/target-i386/kvm.c
+++ b/target-i386/kvm.c
@@ -36,8 +36,8 @@
int kvm_arch_init_vcpu(CPUState *env)
{
struct {
- struct kvm_cpuid cpuid;
- struct kvm_cpuid_entry entries[100];
+ struct kvm_cpuid2 cpuid;
+ struct kvm_cpuid_entry2 entries[100];
} __attribute__((packed)) cpuid_data;
uint32_t limit, i, cpuid_i;
uint32_t eax, ebx, ecx, edx;
@@ -48,7 +48,7 @@ int kvm_arch_init_vcpu(CPUState *env)
limit = eax;
for (i = 0; i <= limit; i++) {
- struct kvm_cpuid_entry *c = &cpuid_data.entries[cpuid_i++];
+ struct kvm_cpuid_entry2 *c = &cpuid_data.entries[cpuid_i++];
cpu_x86_cpuid(env, i, &eax, &ebx, &ecx, &edx);
c->function = i;
@@ -62,7 +62,7 @@ int kvm_arch_init_vcpu(CPUState *env)
limit = eax;
for (i = 0x80000000; i <= limit; i++) {
- struct kvm_cpuid_entry *c = &cpuid_data.entries[cpuid_i++];
+ struct kvm_cpuid_entry2 *c = &cpuid_data.entries[cpuid_i++];
cpu_x86_cpuid(env, i, &eax, &ebx, &ecx, &edx);
c->function = i;
@@ -74,7 +74,7 @@ int kvm_arch_init_vcpu(CPUState *env)
cpuid_data.cpuid.nent = cpuid_i;
- return kvm_vcpu_ioctl(env, KVM_SET_CPUID, &cpuid_data);
+ return kvm_vcpu_ioctl(env, KVM_SET_CPUID2, &cpuid_data);
}
static int kvm_has_msr_star(CPUState *env)
--
1.5.6.5
Re: [Qemu-devel] [PATCH 0/4] Improve cpuid x86 code., Amit Shah, 2009/01/30