From: Borislav Petkov <bp@alien8.de>
To: Markus Trippelsdorf <markus@trippelsdorf.de>
Cc: Andy Lutomirski <luto@kernel.org>, Ingo Molnar <mingo@kernel.org>,
Thomas Gleixner <tglx@linutronix.de>,
Peter Zijlstra <peterz@infradead.org>,
LKML <linux-kernel@vger.kernel.org>,
Ingo Molnar <mingo@redhat.com>,
Tom Lendacky <thomas.lendacky@amd.com>
Subject: Re: Current mainline git (24e700e291d52bd2) hangs when building e.g. perf
Date: Sat, 9 Sep 2017 19:05:37 +0200 [thread overview]
Message-ID: <20170909170537.6xmxtzwripplhhwi@pd.tnic> (raw)
In-Reply-To: <20170909163225.GA290@x4>
On Sat, Sep 09, 2017 at 06:32:25PM +0200, Markus Trippelsdorf wrote:
> Also tried the following patch. It does not help.
Ok, another theory. This one still needs to be fixed properly but that
for later.
For some reason (insufficient coffee maybe), I have mistyped your
MCi_STATUS value earlier. Your mail says it is "fa000010000b0c0f". Do
you still have a screen photo to verify it?
Because if so, the correct error type is:
MC4_STATUS[Val|Over|UC|EN|MiscV|PCC|EEC: Protocol error (link, L3, probe filter) (0x0b)|ET: BUS(pp:OBS;t:NOTIMOUT;r4:GEN;ii:GEN;ll:LG)]: 0xfa000010000b0c0f
And for that I'd need the MC4_ADDR value too.
So can you please apply the patch below ontop of the syncflood quirk
patch and retrigger, make a photo of the MCE and send it to me?
Thanks.
---
commit e84e5ad290c7c26af69a721148f404766529509b
Author: Borislav Petkov <bp@suse.de>
Date: Sat Sep 9 00:55:50 2017 +0200
x86/MCE/AMD: Collect error info even if valid bits are not set
The MCA banks log error info into MCA_ADDR, MCA_MISC0, and MCA_SYND even
if the corresponding valid bits are not set:
"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."
Do so by setting those bits so that code down the MCE processing path
doesn't need to be changed.
Signed-off-by: Borislav Petkov <bp@suse.de>
diff --git a/arch/x86/kernel/cpu/mcheck/mce.c b/arch/x86/kernel/cpu/mcheck/mce.c
index 3b413065c613..c63c7ef326c7 100644
--- a/arch/x86/kernel/cpu/mcheck/mce.c
+++ b/arch/x86/kernel/cpu/mcheck/mce.c
@@ -436,6 +436,20 @@ 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)
--
Regards/Gruss,
Boris.
Good mailing practices for 400: avoid top-posting and trim the reply.
next prev parent reply other threads:[~2017-09-09 17:05 UTC|newest]
Thread overview: 61+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-09-05 7:27 Current mainline git (24e700e291d52bd2) hangs when building e.g. perf Markus Trippelsdorf
2017-09-05 8:53 ` Peter Zijlstra
2017-09-05 9:55 ` Markus Trippelsdorf
2017-09-06 12:52 ` Thomas Gleixner
2017-09-06 13:15 ` Markus Trippelsdorf
2017-09-07 6:28 ` Markus Trippelsdorf
2017-09-08 5:35 ` Markus Trippelsdorf
2017-09-08 6:26 ` Thomas Gleixner
2017-09-08 8:05 ` Borislav Petkov
2017-09-08 9:16 ` Borislav Petkov
2017-09-08 9:48 ` Markus Trippelsdorf
2017-09-08 10:35 ` Ingo Molnar
2017-09-08 10:39 ` Markus Trippelsdorf
2017-09-08 11:30 ` Markus Trippelsdorf
2017-09-08 16:12 ` Andy Lutomirski
2017-09-08 17:16 ` Markus Trippelsdorf
2017-09-08 21:47 ` Andy Lutomirski
2017-09-08 21:56 ` Borislav Petkov
2017-09-08 23:07 ` Andy Lutomirski
2017-09-08 23:23 ` Linus Torvalds
2017-09-09 0:00 ` Andy Lutomirski
2017-09-09 1:05 ` Linus Torvalds
2017-09-09 1:39 ` Andy Lutomirski
2017-09-09 17:49 ` Andy Lutomirski
2017-09-09 18:02 ` Linus Torvalds
2017-09-09 6:39 ` Markus Trippelsdorf
2017-09-09 10:18 ` Borislav Petkov
2017-09-09 11:07 ` Markus Trippelsdorf
2017-09-09 13:07 ` Borislav Petkov
2017-09-09 13:37 ` Markus Trippelsdorf
2017-09-09 13:39 ` Markus Trippelsdorf
2017-09-09 14:07 ` Borislav Petkov
2017-09-09 14:20 ` Markus Trippelsdorf
2017-09-09 14:33 ` Borislav Petkov
2017-09-09 14:43 ` Markus Trippelsdorf
2017-09-09 16:32 ` Markus Trippelsdorf
2017-09-09 17:05 ` Borislav Petkov [this message]
2017-09-09 17:23 ` Markus Trippelsdorf
2017-09-09 17:36 ` Borislav Petkov
2017-09-09 18:14 ` Markus Trippelsdorf
2017-09-09 18:26 ` Borislav Petkov
2017-09-09 18:46 ` Markus Trippelsdorf
2017-09-09 19:11 ` Borislav Petkov
2017-09-09 19:19 ` Borislav Petkov
2017-09-09 18:26 ` Linus Torvalds
2017-09-09 18:29 ` Borislav Petkov
2017-09-09 18:47 ` Linus Torvalds
2017-09-09 19:09 ` Borislav Petkov
2017-09-09 19:21 ` Linus Torvalds
2017-09-09 19:28 ` Andy Lutomirski
2017-09-09 19:37 ` Borislav Petkov
2017-09-10 4:42 ` Andy Lutomirski
2017-09-10 20:22 ` Peter Zijlstra
2017-09-10 20:25 ` Andy Lutomirski
2017-09-17 17:04 ` Ingo Molnar
2017-09-11 1:12 ` Rik van Riel
2017-09-11 1:46 ` Andy Lutomirski
2017-09-11 15:08 ` Rik van Riel
2017-09-12 7:14 ` Markus Trippelsdorf
2017-09-09 8:13 ` Markus Trippelsdorf
2017-09-08 14:51 ` Borislav Petkov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20170909170537.6xmxtzwripplhhwi@pd.tnic \
--to=bp@alien8.de \
--cc=linux-kernel@vger.kernel.org \
--cc=luto@kernel.org \
--cc=markus@trippelsdorf.de \
--cc=mingo@kernel.org \
--cc=mingo@redhat.com \
--cc=peterz@infradead.org \
--cc=tglx@linutronix.de \
--cc=thomas.lendacky@amd.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).