Revert "x86/mce/AMD: Collect error info even if valid bits are not set"
authorYazen Ghannam <yazen.ghannam@amd.com>
Mon, 26 Mar 2018 19:15:25 +0000 (14:15 -0500)
committerThomas Gleixner <tglx@linutronix.de>
Wed, 28 Mar 2018 18:34:59 +0000 (20:34 +0200)
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@amd.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: tony.luck@intel.com
Cc: Yazen Ghannam <Yazen.Ghannam@amd.com>
Cc: bp@suse.de
Cc: linux-edac@vger.kernel.org
Link: https://lkml.kernel.org/r/20180326191526.64314-1-Yazen.Ghannam@amd.com
arch/x86/kernel/cpu/mcheck/mce.c

index 21962c48dad70806b46da6e2973d05e3f63dbbfc..3c1eec17312ba1bdfe6cb892c0b887c84d14ba14 100644 (file)
@@ -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)