qemu-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-commits] [COMMIT ac74d0f] x86: mce_banks always have the same size


From: Anthony Liguori
Subject: [Qemu-commits] [COMMIT ac74d0f] x86: mce_banks always have the same size
Date: Mon, 05 Oct 2009 14:53:13 -0000

From: Juan Quintela <address@hidden>

mce_banks is always MCE_BANKS_DEF * 4 in size, value never change

CC: Huang Ying <address@hidden>
Signed-off-by: Juan Quintela <address@hidden>
Signed-off-by: Anthony Liguori <address@hidden>

diff --git a/target-i386/cpu.h b/target-i386/cpu.h
index f069018..1bf027e 100644
--- a/target-i386/cpu.h
+++ b/target-i386/cpu.h
@@ -698,7 +698,7 @@ typedef struct CPUX86State {
     uint64 mcg_cap;
     uint64 mcg_status;
     uint64 mcg_ctl;
-    uint64 *mce_banks;
+    uint64 mce_banks[MCE_BANKS_DEF*4];
 
     uint64_t tsc_aux;
 } CPUX86State;
diff --git a/target-i386/helper.c b/target-i386/helper.c
index 999c1bf..c961544 100644
--- a/target-i386/helper.c
+++ b/target-i386/helper.c
@@ -1597,8 +1597,7 @@ static void mce_init(CPUX86State *cenv)
         && (cenv->cpuid_features&(CPUID_MCE|CPUID_MCA)) == 
(CPUID_MCE|CPUID_MCA)) {
         cenv->mcg_cap = MCE_CAP_DEF | MCE_BANKS_DEF;
         cenv->mcg_ctl = ~(uint64_t)0;
-        bank_num = cenv->mcg_cap & 0xff;
-        cenv->mce_banks = qemu_mallocz(bank_num * sizeof(uint64_t) * 4);
+        bank_num = MCE_BANKS_DEF;
         for (bank = 0; bank < bank_num; bank++)
             cenv->mce_banks[bank*4] = ~(uint64_t)0;
     }
diff --git a/target-i386/machine.c b/target-i386/machine.c
index 18347e4..7dc8afc 100644
--- a/target-i386/machine.c
+++ b/target-i386/machine.c
@@ -157,7 +157,7 @@ void cpu_save(QEMUFile *f, void *opaque)
     if (env->mcg_cap) {
         qemu_put_be64s(f, &env->mcg_status);
         qemu_put_be64s(f, &env->mcg_ctl);
-        for (i = 0; i < (env->mcg_cap & 0xff); i++) {
+        for (i = 0; i < MCE_BANKS_DEF; i++) {
             qemu_put_be64s(f, &env->mce_banks[4*i]);
             qemu_put_be64s(f, &env->mce_banks[4*i + 1]);
             qemu_put_be64s(f, &env->mce_banks[4*i + 2]);
@@ -355,7 +355,7 @@ int cpu_load(QEMUFile *f, void *opaque, int version_id)
         if (env->mcg_cap) {
             qemu_get_be64s(f, &env->mcg_status);
             qemu_get_be64s(f, &env->mcg_ctl);
-            for (i = 0; i < (env->mcg_cap & 0xff); i++) {
+            for (i = 0; i < MCE_BANKS_DEF; i++) {
                 qemu_get_be64s(f, &env->mce_banks[4*i]);
                 qemu_get_be64s(f, &env->mce_banks[4*i + 1]);
                 qemu_get_be64s(f, &env->mce_banks[4*i + 2]);




reply via email to

[Prev in Thread] Current Thread [Next in Thread]