Re: [PATCH] x86/cpuid: expose AVX512_4VNNIW and AVX512_4FMAPS features to kvm guest

From: Paolo Bonzini
Date: Sat Oct 29 2016 - 08:41:18 EST




----- Original Message -----
> From: "Borislav Petkov" <bp@xxxxxxxxx>
> To: "Paolo Bonzini" <pbonzini@xxxxxxxxxx>
> Cc: "Piotr Luc" <Piotr.Luc@xxxxxxxxx>, kvm@xxxxxxxxxxxxxxx, "he chen" <he.chen@xxxxxxxxxxxxxxx>,
> linux-kernel@xxxxxxxxxxxxxxx, tglx@xxxxxxxxxxxxx, x86@xxxxxxxxxx, hpa@xxxxxxxxx, mingo@xxxxxxxxxx, "Luwei Kang"
> <luwei.kang@xxxxxxxxx>, rkrcmar@xxxxxxxxxx
> Sent: Saturday, October 29, 2016 2:25:48 PM
> Subject: Re: [PATCH] x86/cpuid: expose AVX512_4VNNIW and AVX512_4FMAPS features to kvm guest
>
> On Sat, Oct 29, 2016 at 08:21:17AM -0400, Paolo Bonzini wrote:
> > Currently none of the bits in CPUID[7,0].edx is ever masked by the host, so
> > this would be enough. If we ever need to do some masking, I guess I'll
> > practice my puss-in-boots look and submit a patch to add CPUID[7,0] back
> > as a separate cpufeature entr.
>
> I don't understand - why can't it be filtered here if needed? I.e.,
>
> return edx & KVM_CPUID_EDX_7_MASK;
>
> or so?

Because then it wouldn't be in processor.h.

> Btw, we already have a cpuid_edx() helper in arch/x86/include/asm/processor.h

Yes, but it doesn't take an ecx.

Anyhow this is not an issue for now. It will depend on which other bits
are added to CPUID[7,0].edx, but in general it's relatively rare to blacklist
bits from cpufeature.

Paolo