Messages in this thread | | | Date | Wed, 15 Dec 2021 11:41:23 +0100 | Subject | Re: [patch 5/6] x86/fpu: Provide fpu_update_guest_xcr0/xfd() | From | Paolo Bonzini <> |
| |
On 12/15/21 11:27, Paolo Bonzini wrote: > On 12/15/21 11:09, Thomas Gleixner wrote: >> Lets assume the restore order is XSTATE, XCR0, XFD: >> >> XSTATE has everything in init state, which means the default >> buffer is good enough >> >> XCR0 has everything enabled including AMX, so the buffer is >> expanded >> >> XFD has AMX disable set, which means the buffer expansion was >> pointless >> >> If we go there, then we can just use a full expanded buffer for KVM >> unconditionally and be done with it. That spares a lot of code. > > If we decide to use a full expanded buffer as soon as KVM_SET_CPUID2 is > done, that would work for me.
Off-list, Thomas mentioned doing it even at vCPU creation as long as the prctl has been called. That is also okay and even simpler.
There's also another important thing that hasn't been mentioned so far: KVM_GET_SUPPORTED_CPUID should _not_ include the dynamic bits in CPUID[0xD] if they have not been requested with prctl. It's okay to return the AMX bit, but not the bit in CPUID[0xD].
Paolo
| |