[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.DEB.2.21.1910171322530.1824@nanos.tec.linutronix.de>
Date: Thu, 17 Oct 2019 14:29:45 +0200 (CEST)
From: Thomas Gleixner <tglx@...utronix.de>
To: Paolo Bonzini <pbonzini@...hat.com>
cc: Xiaoyao Li <xiaoyao.li@...el.com>,
Sean Christopherson <sean.j.christopherson@...el.com>,
Fenghua Yu <fenghua.yu@...el.com>,
Ingo Molnar <mingo@...hat.com>, Borislav Petkov <bp@...en8.de>,
H Peter Anvin <hpa@...or.com>,
Peter Zijlstra <peterz@...radead.org>,
Andrew Morton <akpm@...ux-foundation.org>,
Dave Hansen <dave.hansen@...el.com>,
Radim Krcmar <rkrcmar@...hat.com>,
Ashok Raj <ashok.raj@...el.com>,
Tony Luck <tony.luck@...el.com>,
Dan Williams <dan.j.williams@...el.com>,
Sai Praneeth Prakhya <sai.praneeth.prakhya@...el.com>,
Ravi V Shankar <ravi.v.shankar@...el.com>,
linux-kernel <linux-kernel@...r.kernel.org>,
x86 <x86@...nel.org>, kvm@...r.kernel.org
Subject: [RFD] x86/split_lock: Request to Intel
The more I look at this trainwreck, the less interested I am in merging any
of this at all.
The fact that it took Intel more than a year to figure out that the MSR is
per core and not per thread is yet another proof that this industry just
works by pure chance.
There is a simple way out of this misery:
Intel issues a microcode update which does:
1) Convert the OR logic of the AC enable bit in the TEST_CTRL MSR to
AND logic, i.e. when one thread disables AC it's automatically
disabled on the core.
Alternatively it supresses the #AC when the current thread has it
disabled.
2) Provide a separate bit which indicates that the AC enable logic is
actually AND based or that #AC is supressed when the current thread
has it disabled.
Which way I don't really care as long as it makes sense.
If that's not going to happen, then we just bury the whole thing and put it
on hold until a sane implementation of that functionality surfaces in
silicon some day in the not so foreseeable future.
Seriously, this makes only sense when it's by default enabled and not
rendered useless by VIRT. Otherwise we never get any reports and none of
the issues are going to be fixed.
Thanks,
tglx
Powered by blists - more mailing lists