Re: [PATCH 2/3 V2] x86/mce: Fix incorrect "Machine check from unknown source" message

Borislav Petkov
2018-05-29T17:41:09Z

On Tue, May 29, 2018 at 09:15:49AM -0700, Luck, Tony wrote:
> @@ -1287,12 +1292,17 @@ void do_machine_check(struct pt_regs *regs, long error_code)
> no_way_out = worst >= MCE_PANIC_SEVERITY;
> } else {
> /*
> - * Local MCE skipped calling mce_reign()
> - * If we found a fatal error, we need to panic here.
> + * If there was a fatal machine check we should have
> + * already called mce_panic earlier in this function.
> + * Since we re-read the banks, we might have found
> + * something new. Check again to see if we found a
> + * fatal error. We call "mce_severity()" again to
> + * make sure we have the right "msg".
> */
> - if (worst >= MCE_PANIC_SEVERITY && mca_cfg.tolerant < 3)
> - mce_panic("Machine check from unknown source",
> - NULL, NULL);
> + if (worst >= MCE_PANIC_SEVERITY && mca_cfg.tolerant < 3) {
> + severity = mce_severity(&m, cfg->tolerant, &msg, true);
> + mce_panic("Local fatal machine check!", &m, msg);
> + }
> }

It is still assigning. I'll simply do:

if (worst >= MCE_PANIC_SEVERITY && mca_cfg.tolerant < 3) {
mce_severity(&m, cfg->tolerant, &msg, true);
mce_panic("Local fatal machine check!", &m, msg);
}

when committing.

Btw, I did some cleaning up ontop. Please have a look and let me know if
it is too ugly to live... :)

https://git.kernel.org/pub/scm/linux/kernel/git/bp/bp.git/log/?h=rc7%2b0-ras

Thx.

--
Regards/Gruss,
Boris.

SUSE Linux GmbH, GF: Felix Imendörffer, Jane Smithard, Graham Norton, HRB 21284 (AG Nürnberg)
--