[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20180618165840.gikljqhaxtiiw27x@two.firstfloor.org>
Date: Mon, 18 Jun 2018 09:58:40 -0700
From: Andi Kleen <andi@...stfloor.org>
To: Keno Fischer <keno@...iacomputing.com>
Cc: Andi Kleen <andi@...stfloor.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Thomas Gleixner <tglx@...utronix.de>,
Ingo Molnar <mingo@...hat.com>, x86@...nel.org,
"H. Peter Anvin" <hpa@...or.com>, Borislav Petkov <bp@...e.de>,
Dave Hansen <dave.hansen@...ux.intel.com>,
Paolo Bonzini <pbonzini@...hat.com>,
Radim Krčmář <rkrcmar@...hat.com>,
Kyle Huey <khuey@...ehuey.com>,
Robert O'Callahan <robert@...llahan.org>
Subject: Re: [RFC PATCH] x86/arch_prctl: Add ARCH_SET_XCR0 to mask XCR0
per-thread
> Unfortunately, that is insufficient. Almost difference in CPU behavior
> between the replayer
> and the replayee. In particular, the problems for rr here are
> 1) xgetbv, which can introduce differing register contents (and if
> code branches on this,
> potentially differences in control flow).
So you're saying that software checks XGETBV first before checking
CPUID?
That seems broken. Without AVX XGETBV may not exist.
You always have to check CPUID first. And then it should just branch
around the XGETBV.
So we're talking about a workaround for broken software. The question
is how wide spread is it?
> 2) xsave writing more memory than the trace expects, causing
> divergence in the memory
> contents of the process.
Do memory contents which are never read by the application matter?
-Andi
Powered by blists - more mailing lists