[MODERATED] Re: [PATCH 7/9] TAA 7

Josh Poimboeuf <[email protected]>
Newsgroups org.kernel.lore.historical-speck
Message-ID <20191024200233.4alkoqepyltqua3l@treble>
On Thu, Oct 24, 2019 at 09:53:16PM +0200, speck for Borislav Petkov wrote:
> On Thu, Oct 24, 2019 at 08:20:42PM +0200, speck for Jiri Kosina wrote:
> > On Thu, 24 Oct 2019, speck for Borislav Petkov wrote:
> > 
> > > "Disable TSX if the CPU is affected by the TSX Async Abort (TAA)
> > > vulnerability and microcode provides a special MSR - TSX_CTRL_MSR -
> > > which provides the required TSX control knobs. On MDS-affected parts
> > > where VERW takes care of the TAA vulnerability, that controlling MSR is
> > > not present and thus TSX cannot be disabled there."
> > 
> > This is true if you ignore hyperthreading.
> > 
> > On SMT systems, TSX disable is 100% complete mitigation, while VERW
> > clearing is not.
> 
> So why is our default this then?
> 
> static enum taa_mitigations taa_mitigation __ro_after_init = TAA_MITIGATION_VERW;
> 
> and we only do the TAA_MITIGATION_TSX_DISABLED thing only if TSX has
> been disabled earlier?
> 
> Because of those MDS_NO=0 machines which don't get the TSX_CTRL MSR so
> that TSX cannot be disabled there?
> 
> Are some of those machines SMT?
> 
> Because if so, we *must* disable SMT unconditionally to mitigate TAA
> completely there... methinks.

For the same reasons we kept SMT enabled for L1TF and MDS...  We don't
want to break existing SMT workloads.

-- 
Josh
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.