[PATCH v2 2/5] x86/mce/inject: Warn the user on a not set valid bit in MCA_STATUS

From: Smita Koralahalli
Date: Tue Oct 19 2021 - 19:37:24 EST


MCA handlers check the valid bit in each status register (MCA_STATUS[Val])
and will likely ignore signatures if the valid bit is not set.

Warn the user if the valid bit is not set before doing error injection.

Signed-off-by: Smita Koralahalli <Smita.KoralahalliChannabasappa@xxxxxxx>
---
v2:
Added a warning statement instead of setting the valid bit.
---
arch/x86/kernel/cpu/mce/inject.c | 3 +++
1 file changed, 3 insertions(+)

diff --git a/arch/x86/kernel/cpu/mce/inject.c b/arch/x86/kernel/cpu/mce/inject.c
index 601efd104bb4..a993dc3d0333 100644
--- a/arch/x86/kernel/cpu/mce/inject.c
+++ b/arch/x86/kernel/cpu/mce/inject.c
@@ -487,6 +487,9 @@ static void do_inject(void)

i_mce.tsc = rdtsc_ordered();

+ if (!(i_mce.status & MCI_STATUS_VAL))
+ pr_warn("Handlers might ignore signatures with Val=0 in MCA_STATUS\n");
+
if (i_mce.misc)
i_mce.status |= MCI_STATUS_MISCV;

--
2.17.1