Commit d5c84ef2 authored by Borislav Petkov's avatar Borislav Petkov Committed by Thomas Gleixner

x86/mce: Cleanup __mc_scan_banks()

Correct comments, improve readability, simplify.

No functional changes.
Signed-off-by: default avatarBorislav Petkov <bp@suse.de>
Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
Link: https://lkml.kernel.org/r/20180622095428.626-7-bp@alien8.de
parent f35565e3
...@@ -1143,6 +1143,7 @@ static void __mc_scan_banks(struct mce *m, struct mce *final, ...@@ -1143,6 +1143,7 @@ static void __mc_scan_banks(struct mce *m, struct mce *final,
__clear_bit(i, toclear); __clear_bit(i, toclear);
if (!test_bit(i, valid_banks)) if (!test_bit(i, valid_banks))
continue; continue;
if (!mce_banks[i].ctl) if (!mce_banks[i].ctl)
continue; continue;
...@@ -1151,39 +1152,35 @@ static void __mc_scan_banks(struct mce *m, struct mce *final, ...@@ -1151,39 +1152,35 @@ static void __mc_scan_banks(struct mce *m, struct mce *final,
m->bank = i; m->bank = i;
m->status = mce_rdmsrl(msr_ops.status(i)); m->status = mce_rdmsrl(msr_ops.status(i));
if ((m->status & MCI_STATUS_VAL) == 0) if (!(m->status & MCI_STATUS_VAL))
continue; continue;
/* /*
* Non uncorrected or non signaled errors are handled by * Corrected or non-signaled errors are handled by
* machine_check_poll. Leave them alone, unless this panics. * machine_check_poll(). Leave them alone, unless this panics.
*/ */
if (!(m->status & (cfg->ser ? MCI_STATUS_S : MCI_STATUS_UC)) && if (!(m->status & (cfg->ser ? MCI_STATUS_S : MCI_STATUS_UC)) &&
!no_way_out) !no_way_out)
continue; continue;
/* /* Set taint even when machine check was not enabled. */
* Set taint even when machine check was not enabled.
*/
add_taint(TAINT_MACHINE_CHECK, LOCKDEP_NOW_UNRELIABLE); add_taint(TAINT_MACHINE_CHECK, LOCKDEP_NOW_UNRELIABLE);
severity = mce_severity(m, cfg->tolerant, NULL, true); severity = mce_severity(m, cfg->tolerant, NULL, true);
/* /*
* When machine check was for corrected/deferred handler don't * When machine check was for corrected/deferred handler don't
* touch, unless we're panicing. * touch, unless we're panicking.
*/ */
if ((severity == MCE_KEEP_SEVERITY || if ((severity == MCE_KEEP_SEVERITY ||
severity == MCE_UCNA_SEVERITY) && !no_way_out) severity == MCE_UCNA_SEVERITY) && !no_way_out)
continue; continue;
__set_bit(i, toclear); __set_bit(i, toclear);
if (severity == MCE_NO_SEVERITY) {
/* /* Machine check event was not enabled. Clear, but ignore. */
* Machine check event was not enabled. Clear, but if (severity == MCE_NO_SEVERITY)
* ignore.
*/
continue; continue;
}
mce_read_aux(m, i); mce_read_aux(m, i);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment