[PATCH 05/13] powerpc/mce: Allow notifier callback to handle MCE
Reza Arbab
arbab at linux.ibm.com
Sun Jun 23 12:14:01 AEST 2019
Hi Mahesh,
On Fri, Jun 21, 2019 at 12:35:08PM +0530, Mahesh Jagannath Salgaonkar wrote:
>On 6/21/19 6:27 AM, Santosh Sivaraj wrote:
>> - blocking_notifier_call_chain(&mce_notifier_list, 0, &evt);
>> + rc = blocking_notifier_call_chain(&mce_notifier_list, 0, evt);
>> + if (rc & NOTIFY_STOP_MASK) {
>> + evt->disposition = MCE_DISPOSITION_RECOVERED;
>> + regs->msr |= MSR_RI;
>
>What is the reason for setting MSR_RI ? I don't think this is a good
>idea. MSR_RI = 0 means system got MCE interrupt when SRR0 and SRR1
>contents were live and was overwritten by MCE interrupt. Hence this
>interrupt is unrecoverable irrespective of whether machine check handler
>recovers from it or not.
Good catch! I think this is an artifact from when I was first trying to
get all this working.
Instead of setting MSR_RI, we should probably just check for it. Ie,
if ((rc & NOTIFY_STOP_MASK) && (regs->msr & MSR_RI)) {
evt->disposition = MCE_DISPOSITION_RECOVERED;
--
Reza Arbab
More information about the Linuxppc-dev
mailing list