mce: Add errata workaround for Skylake SKX37
Subsystems (3)
Errata SKX37 is word-for-word identical to the other errata listed in
this workaround. I happened to notice this after investigating a CMCI
storm on a Skylake host. While I can't confirm this was the root cause, spurious corrected errors does sound like a likely suspect.
x86/kernel/cpu/mce/intel.c +3 -2
@@ -547,12 +547,13 @@ bool intel_filter_mce(struct mce *m) {struct cpuinfo_x86 *c = &boot_cpu_data; -/* MCE errata HSD131, HSM142, HSW131, BDM48, and HSM142 */ +/* MCE errata HSD131, HSM142, HSW131, BDM48, HSM142 and SKX37 */ if ((c->x86 ==6 ) && ((c->x86_model ==INTEL_FAM6_HASWELL ) || (c->x86_model ==INTEL_FAM6_HASWELL_L ) || (c->x86_model ==INTEL_FAM6_BROADWELL ) || - (c->x86_model ==INTEL_FAM6_HASWELL_G )) && + (c->x86_model ==INTEL_FAM6_HASWELL_G ) || + (c->x86_model ==INTEL_FAM6_SKYLAKE_X )) && (m->bank ==0 ) && ((m->status &0xa0000000ffffffff ) ==0x80000000000f0005 ))return true;
Quoted 6 lines · Dave Jones
Errata SKX37 is word-for-word identical to the other errata listed in
this workaround. I happened to notice this after investigating a CMCI
storm on a Skylake host. While I can't confirm this was the root cause, spurious corrected errors does sound like a likely suspect.Signed-off-by Dave Jones <[email protected]>
Needs:
otherwise:
Quoted 21 lines
x86/kernel/cpu/mce/intel.c +3
-2@@ -547,12 +547,13 @@ bool intel_filter_mce(struct mce *m) {struct cpuinfo_x86 *c = &boot_cpu_data; -/* MCE errata HSD131, HSM142, HSW131, BDM48, and HSM142 */ +/* MCE errata HSD131, HSM142, HSW131, BDM48, HSM142 and SKX37 */ if ((c->x86 ==6 ) && ((c->x86_model ==INTEL_FAM6_HASWELL ) || (c->x86_model ==INTEL_FAM6_HASWELL_L ) || (c->x86_model ==INTEL_FAM6_BROADWELL ) || - (c->x86_model ==INTEL_FAM6_HASWELL_G )) && + (c->x86_model ==INTEL_FAM6_HASWELL_G ) || + (c->x86_model ==INTEL_FAM6_SKYLAKE_X )) && (m->bank ==0 ) && ((m->status &0xa0000000ffffffff ) ==0x80000000000f0005 ))return true;
[tip: x86/urgent] x86/mce: Add errata workaround for Skylake SKX37
In reply to Dave JonesThe following commit has been merged into the x86/urgent branch of tip:
The following commit has been merged into the x86/urgent branch of tip:
Commit-ID: e629fc1407a63dbb748f828f9814463ffc2a0af0 Gitweb: https://git.kernel.org/tip/e629fc1407a63dbb748f828f9814463ffc2a0af0 Author: Dave Jones <[email protected]> AuthorDate: Fri, 29 Oct 2021 16:57:59 -04:00 Committer: Dave Hansen <[email protected]> CommitterDate: Fri, 12 Nov 2021 11:43:35 -08:00
x86/mce: Add errata workaround for Skylake SKX37
Errata SKX37 is word-for-word identical to the other errata listed in
this workaround. I happened to notice this after investigating a CMCI
storm on a Skylake host. While I can't confirm this was the root cause, spurious corrected errors does sound like a likely suspect.
--- arch/x86/kernel/cpu/mce/intel.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-)
arch/x86/kernel/cpu/mce/intel.c +3 -2
@@ -547,12 +547,13 @@ bool intel_filter_mce(struct mce *m) {struct cpuinfo_x86 *c = &boot_cpu_data; -/* MCE errata HSD131, HSM142, HSW131, BDM48, and HSM142 */ +/* MCE errata HSD131, HSM142, HSW131, BDM48, HSM142 and SKX37 */ if ((c->x86 ==6 ) && ((c->x86_model ==INTEL_FAM6_HASWELL ) || (c->x86_model ==INTEL_FAM6_HASWELL_L ) || (c->x86_model ==INTEL_FAM6_BROADWELL ) || - (c->x86_model ==INTEL_FAM6_HASWELL_G )) && + (c->x86_model ==INTEL_FAM6_HASWELL_G ) || + (c->x86_model ==INTEL_FAM6_SKYLAKE_X )) && (m->bank ==0 ) && ((m->status &0xa0000000ffffffff ) ==0x80000000000f0005 ))return true;