mcheck_cmn_handler() does not always set 'severity_cpu' to override its value taken from previous rounds of MC handling, which will interfere the current round of MC handling. Always re-initialize it to clear the historical value.
Signed-off-by: Haozhong Zhang <[email protected]> --- Reason for resend: * Move the re-initialization after its last use, so that we can avoid introducing a new mce barrier. --- xen/arch/x86/cpu/mcheck/mce.c | 1 + 1 file changed, 1 insertion(+) diff --git a/xen/arch/x86/cpu/mcheck/mce.c b/xen/arch/x86/cpu/mcheck/mce.c index a2e9668..0d9d5b0 100644 --- a/xen/arch/x86/cpu/mcheck/mce.c +++ b/xen/arch/x86/cpu/mcheck/mce.c @@ -523,6 +523,7 @@ void mcheck_cmn_handler(const struct cpu_user_regs *regs) mc_panic(ebuf); } atomic_set(&found_error, 0); + atomic_set(&severity_cpu, -1); } mce_barrier_exit(&mce_trap_bar); -- 2.10.1 _______________________________________________ Xen-devel mailing list [email protected] https://lists.xen.org/xen-devel
