Re: [PATCH v8 2/5] x86/cpuid: Add generic table for cpuid dependencies

From: Andi Kleen
Date: Thu Oct 05 2017 - 19:08:19 EST


On Fri, Oct 06, 2017 at 12:41:56AM +0200, Thomas Gleixner wrote:
> On Thu, 5 Oct 2017, Andi Kleen wrote:
> > +/*
> > + * Table of CPUID features that depend on others.
> > + *
> > + * This only includes dependencies that can be usefully disabled, not
> > + * features part of the base set (like FPU).
> > + */
> > +const static struct cpuid_dep cpuid_deps[] = {
> > + { X86_FEATURE_XSAVEOPT, X86_FEATURE_XSAVE },
> > + { X86_FEATURE_XSAVEC, X86_FEATURE_XSAVE },
> > + { X86_FEATURE_XSAVES, X86_FEATURE_XSAVE },
> > + { X86_FEATURE_AVX, X86_FEATURE_XSAVE },
> > + { X86_FEATURE_AVX512F, X86_FEATURE_XSAVE },
>
> This looks redundant. AVX512F depends on AVX which itself depends on XSAVE.

True.

>
> > + { X86_FEATURE_PKU, X86_FEATURE_XSAVE },
> > + { X86_FEATURE_MPX, X86_FEATURE_XSAVE },
> > + { X86_FEATURE_XGETBV1, X86_FEATURE_XSAVE },
> > + { X86_FEATURE_XMM2, X86_FEATURE_XMM },
>
> XMM has no dependency?

Only FXSAVE, I'll add that.

Thanks,

-Andi