Hi, Avi, On Tue, 2010-01-05 at 18:50 +0800, Avi Kivity wrote: > On 01/05/2010 10:34 AM, Huang Ying wrote: > > Now, if we inject a fatal MCE into guest OS, for example Linux, Linux > > will go panic and then reboot. But if we inject another MCE now, > > system will reset directly instead of go panic firstly, because > > MCG_STATUS.MCIP is set to 1 and not cleared after reboot. This is does > > not follow the behavior in real hardware. > > > > This patch fixes this via set IA32_MCG_STATUS to 0 during system reset. > > > > Signed-off-by: Huang Ying<ying.huang@xxxxxxxxx> > > --- > > qemu-kvm-x86.c | 1 + > > 1 file changed, 1 insertion(+) > > > > --- a/qemu-kvm-x86.c > > +++ b/qemu-kvm-x86.c > > @@ -1015,6 +1015,7 @@ void kvm_arch_load_regs(CPUState *env) > > #endif > > set_msr_entry(&msrs[n++], MSR_KVM_SYSTEM_TIME, env->system_time_msr); > > set_msr_entry(&msrs[n++], MSR_KVM_WALL_CLOCK, env->wall_clock_msr); > > + set_msr_entry(&msrs[n++], MSR_MCG_STATUS, 0); > > > > > > Not sure why you reset this in kvm_arch_load_regs(). Shouldn't this be > in the cpu reset code? I found kvm_arch_load_regs() is called by kvm_arch_cpu_reset(), which is called by qemu_kvm_system_reset(). It is not in cpu reset path? Best Regards, Huang Ying -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html