[PATCH 1/2] Revert "x86/mce/AMD: Collect error info even if valid bits are not set"

From: Yazen Ghannam
Date: Mon Mar 26 2018 - 15:15:49 EST


From: Yazen Ghannam <yazen.ghannam@xxxxxxx>

This reverts commit 4b1e84276a6172980c5bf39aa091ba13e90d6dad.

Software uses the valid bits to decide if the values can be used for
further processing or other actions. So setting the valid bits will have
software act on values that it shouldn't be acting on.

The recommendation to save all the register values does not mean that
the values are always valid.

Signed-off-by: Yazen Ghannam <yazen.ghannam@xxxxxxx>
---
arch/x86/kernel/cpu/mcheck/mce.c | 14 --------------
1 file changed, 14 deletions(-)

diff --git a/arch/x86/kernel/cpu/mcheck/mce.c b/arch/x86/kernel/cpu/mcheck/mce.c
index 86079b90ebcf..42cf2880d0ed 100644
--- a/arch/x86/kernel/cpu/mcheck/mce.c
+++ b/arch/x86/kernel/cpu/mcheck/mce.c
@@ -446,20 +446,6 @@ static inline void mce_gather_info(struct mce *m, struct pt_regs *regs)
if (mca_cfg.rip_msr)
m->ip = mce_rdmsrl(mca_cfg.rip_msr);
}
-
- /*
- * Error handlers should save the values in MCA_ADDR, MCA_MISC0, and
- * MCA_SYND even if MCA_STATUS[AddrV], MCA_STATUS[MiscV], and
- * MCA_STATUS[SyndV] are zero.
- */
- if (m->cpuvendor == X86_VENDOR_AMD) {
- u64 status = MCI_STATUS_ADDRV | MCI_STATUS_MISCV;
-
- if (mce_flags.smca)
- status |= MCI_STATUS_SYNDV;
-
- m->status |= status;
- }
}

int mce_available(struct cpuinfo_x86 *c)
--
2.14.1