lkml.org 
[lkml]   [2015]   [Mar]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRE: [PATCH v3 1/2] x86: mce: kexec: switch MCE handler for kexec/kdump
Date
+static void machine_check_under_kdump(struct pt_regs *regs, long error_code)
+{
+ if (mca_cfg.kdump_cpu == smp_processor_id())
+ pr_emerg("MCE triggered when kdumping. If you are lucky enough, you will have a kdump. Otherwise, this is a dying message.\n");

I'm worried about the SRAR case here. Your code just returns, which will trigger the same machine check again. The system will spin forever printing this message.

I think you have to look at MCG_STATUS and scan the machine check banks to make a choice. There are some simple cases:

MCG_STATUS.RIPV=0 -> cannot return (where will the cpu go - you have no idea!)
SRAO -> safe to just return
SRAR -> should not return

But the rest may require some thought. If there is a PCC=1 error, then you may end up with a corrupt dump. Perhaps this case will already be covered by RPIV==0?

-Tony


\
 
 \ /
  Last update: 2015-03-03 19:21    [W:0.141 / U:0.132 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site