Re: Current mainline git (24e700e291d52bd2) hangs when building e.g. perf
From: Markus Trippelsdorf
Date: Sat Sep 09 2017 - 12:32:34 EST
On 2017.09.09 at 16:43 +0200, Markus Trippelsdorf wrote:
> On 2017.09.09 at 16:33 +0200, Borislav Petkov wrote:
> > On Sat, Sep 09, 2017 at 04:20:14PM +0200, Markus Trippelsdorf wrote:
> > > > # rdmsr -a 0x00000410
> > >
> > > 3fffffff
> > > 0
> > > 0
> > > 0
> >
> > WTF?! Those should be equal on every CPU. Yikes, we need to pay
> > attention to those... Grrr.
> >
> > # wrmsr -a 0x00000410 0x3ffffbff
> >
> > should fix your issue.
>
> No, it doesn't work:
>
> x4 ~ # rdmsr -a 0x00000410
> 3fffffff
> 0
> 0
> 0
> x4 ~ # wrmsr -a 0x00000410 0x3ffffbff
> x4 ~ # rdmsr -a 0x00000410
> 3ffffbff
> 0
> 0
> 0
Also tried the following patch. It does not help.
diff --git a/arch/x86/kernel/cpu/mcheck/mce.c b/arch/x86/kernel/cpu/mcheck/mce.c
index 3b413065c613..9ee1edb0929f 100644
--- a/arch/x86/kernel/cpu/mcheck/mce.c
+++ b/arch/x86/kernel/cpu/mcheck/mce.c
@@ -1580,7 +1580,7 @@ static int __mcheck_cpu_apply_quirks(struct cpuinfo_x86 *c)
/* This should be disabled by the BIOS, but isn't always */
if (c->x86_vendor == X86_VENDOR_AMD) {
- if (c->x86 == 15 && cfg->banks > 4) {
+ if ((c->x86 == 15 || c->x86 == 16) && cfg->banks > 4) {
/*
* disable GART TBL walk error reporting, which
* trips off incorrectly with the IOMMU & 3ware
--
Markus