From: Glauber Costa <glom...@redhat.com>

qemu.git uses an array of 100 entries for the msr list, which is arguably large
enough (tm).

I propose we follow the same path, for two reasons:
 1) ease future merge.
 2) avoid stack overflow problems that had already began to appear

Signed-off-by: Glauber Costa <glom...@redhat.com>
Signed-off-by: Marcelo Tosatti <mtosa...@redhat.com>

diff --git a/qemu-kvm-x86.c b/qemu-kvm-x86.c
index 50f6ff2..d071d5e 100644
--- a/qemu-kvm-x86.c
+++ b/qemu-kvm-x86.c
@@ -841,12 +841,6 @@ static int get_msr_entry(struct kvm_msr_entry *entry, 
CPUState *env)
         return 0;
 }
 
-#ifdef TARGET_X86_64
-#define MSR_COUNT 10
-#else
-#define MSR_COUNT 6
-#endif
-
 static void set_v8086_seg(struct kvm_segment *lhs, const SegmentCache *rhs)
 {
     lhs->selector = rhs->selector;
@@ -901,7 +895,7 @@ void kvm_arch_load_regs(CPUState *env)
     struct kvm_regs regs;
     struct kvm_fpu fpu;
     struct kvm_sregs sregs;
-    struct kvm_msr_entry msrs[MSR_COUNT];
+    struct kvm_msr_entry msrs[100];
     int rc, n, i;
 
     regs.rax = env->regs[R_EAX];
@@ -986,7 +980,7 @@ void kvm_arch_load_regs(CPUState *env)
 
     /* msrs */
     n = 0;
-    /* Remember to increase MSR_COUNT if you add new registers below */
+    /* Remember to increase msrs size if you add new registers below */
     set_msr_entry(&msrs[n++], MSR_IA32_SYSENTER_CS,  env->sysenter_cs);
     set_msr_entry(&msrs[n++], MSR_IA32_SYSENTER_ESP, env->sysenter_esp);
     set_msr_entry(&msrs[n++], MSR_IA32_SYSENTER_EIP, env->sysenter_eip);
@@ -1055,7 +1049,7 @@ void kvm_arch_save_regs(CPUState *env)
     struct kvm_regs regs;
     struct kvm_fpu fpu;
     struct kvm_sregs sregs;
-    struct kvm_msr_entry msrs[MSR_COUNT];
+    struct kvm_msr_entry msrs[100];
     uint32_t hflags;
     uint32_t i, n, rc;
 
@@ -1164,7 +1158,7 @@ void kvm_arch_save_regs(CPUState *env)
 
     /* msrs */
     n = 0;
-    /* Remember to increase MSR_COUNT if you add new registers below */
+    /* Remember to increase msrs size if you add new registers below */
     msrs[n++].index = MSR_IA32_SYSENTER_CS;
     msrs[n++].index = MSR_IA32_SYSENTER_ESP;
     msrs[n++].index = MSR_IA32_SYSENTER_EIP;
--
To unsubscribe from this list: send the line "unsubscribe kvm-commits" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to