[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <175111040376.406.17564735803136963525.tip-bot2@tip-bot2>
Date: Sat, 28 Jun 2025 11:33:23 -0000
From: "tip-bot2 for JP Kobryn" <tip-bot2@...utronix.de>
To: linux-tip-commits@...r.kernel.org
Cc: Aijay Adams <aijay@...a.com>, JP Kobryn <inwardvessel@...il.com>,
"Borislav Petkov (AMD)" <bp@...en8.de>, Tony Luck <tony.luck@...el.com>,
Qiuxu Zhuo <qiuxu.zhuo@...el.com>, <stable@...nel.org>, x86@...nel.org,
linux-kernel@...r.kernel.org
Subject: [tip: ras/urgent] x86/mce: Make sure CMCI banks are cleared during
shutdown on Intel
The following commit has been merged into the ras/urgent branch of tip:
Commit-ID: 30ad231a5029bfa16e46ce868497b1a5cdd3c24d
Gitweb: https://git.kernel.org/tip/30ad231a5029bfa16e46ce868497b1a5cdd3c24d
Author: JP Kobryn <inwardvessel@...il.com>
AuthorDate: Fri, 27 Jun 2025 10:49:35 -07:00
Committer: Borislav Petkov (AMD) <bp@...en8.de>
CommitterDate: Sat, 28 Jun 2025 12:45:48 +02:00
x86/mce: Make sure CMCI banks are cleared during shutdown on Intel
CMCI banks are not cleared during shutdown on Intel CPUs. As a side effect,
when a kexec is performed, CPUs coming back online are unable to
rediscover/claim these occupied banks which breaks MCE reporting.
Clear the CPU ownership during shutdown via cmci_clear() so the banks can
be reclaimed and MCE reporting will become functional once more.
[ bp: Massage commit message. ]
Reported-by: Aijay Adams <aijay@...a.com>
Signed-off-by: JP Kobryn <inwardvessel@...il.com>
Signed-off-by: Borislav Petkov (AMD) <bp@...en8.de>
Reviewed-by: Tony Luck <tony.luck@...el.com>
Reviewed-by: Qiuxu Zhuo <qiuxu.zhuo@...el.com>
Cc: <stable@...nel.org>
Link: https://lore.kernel.org/20250627174935.95194-1-inwardvessel@gmail.com
---
arch/x86/kernel/cpu/mce/intel.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/arch/x86/kernel/cpu/mce/intel.c b/arch/x86/kernel/cpu/mce/intel.c
index efcf21e..9b149b9 100644
--- a/arch/x86/kernel/cpu/mce/intel.c
+++ b/arch/x86/kernel/cpu/mce/intel.c
@@ -478,6 +478,7 @@ void mce_intel_feature_init(struct cpuinfo_x86 *c)
void mce_intel_feature_clear(struct cpuinfo_x86 *c)
{
intel_clear_lmce();
+ cmci_clear();
}
bool intel_filter_mce(struct mce *m)
Powered by blists - more mailing lists