[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH] x86/PV: hide features dependent on XSAVE when booted with "no-xsave"

>>> On 30.11.15 at 16:38, <andrew.cooper3@xxxxxxxxxx> wrote:
> On 30/11/15 15:22, Jan Beulich wrote:
>>>>> On 30.11.15 at 14:36, <andrew.cooper3@xxxxxxxxxx> wrote:
>>> On 30/11/15 11:30, Jan Beulich wrote:
>>>> It's not well defined whether YMM register presence
>>>> correlates to AVX, or is simply flagged by the respective XSTATE
>>>> CPUID bit (or a mixture of both).
>>> It is indeed not well defined, which is what makes this area of
>>> functionality so hard to level safely.
>>>> The minimal (and imo more natural) dependency is just the XSTATE bit.
>>> But it is wrong.
>>> Any VEX encoded SIMD operation unconditionally works on YMM state.  In
>>> the case that XMM registers are encoded with a VEX prefix, the upper 128
>>> bits of the YMM register are zeroed (SDM Vol 2, 2.3.10).  This is
>>> contrary to legacy SSE instructions which preserve the upper 128 bits.
>>> Therefore, FMA, FMA4 and XOP do have a strict dependency on AVX.
>> No, if you really want to express it that way, you'll need feature
>> flags derived from the XSTATE bits.
> What? That is absurd.

Sorry, but no, this is not absurd, this is what you can derive from the
SDM without much guessing. There's nowhere the SDM makes any
connection between FMA and AVX. The only connections it makes
are OSXSAVE and XCR0[2:1], neither of which is formally tied to AVX.


Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.