diff --git a/target-i386/cpu.c b/target-i386/cpu.c index 920b78fb309f39542455cd98770283699aa84fdb..26f0e59ab9bfd148ee37a1e91492c9634552721a 100644 --- a/target-i386/cpu.c +++ b/target-i386/cpu.c @@ -2714,7 +2714,7 @@ static void x86_cpu_reset(CPUState *s) xcc->parent_reset(s); - memset(env, 0, offsetof(CPUX86State, cpuid_level)); + memset(env, 0, offsetof(CPUX86State, end_reset_fields)); tlb_flush(s, 1); diff --git a/target-i386/cpu.h b/target-i386/cpu.h index 27af9c3f9ab8d241b26531f568043eee2e21a383..604d5918291fdaf4c97b764015e965a274bf862d 100644 --- a/target-i386/cpu.h +++ b/target-i386/cpu.h @@ -1108,6 +1108,7 @@ typedef struct CPUX86State { CPU_COMMON /* Fields from here on are preserved across CPU reset. */ + struct {} end_reset_fields; /* processor features (e.g. for CPUID insn) */ uint32_t cpuid_level;