On Thu, 17 Nov 2016, Stephen Rothwell wrote:
> + /* Please keep the leaf sorted by cpuid_bit.level for faster search. */
> + static const struct cpuid_bit cpuid_bits[] = {
> +     { X86_FEATURE_APERFMPERF,       CPUID_ECX,  0, 0x00000006, 0 },
> +     { X86_FEATURE_EPB,              CPUID_ECX,  3, 0x00000006, 0 },
> ++    { X86_FEATURE_CAT_L3,           CPUID_EBX,  1, 0x00000010, 0 },
> ++    { X86_FEATURE_CAT_L2,           CPUID_EBX,  2, 0x00000010, 0 },
> ++    { X86_FEATURE_CDP_L3,           CPUID_ECX,  2, 0x00000010, 1 },
> +     { X86_FEATURE_INTEL_PT,         CPUID_EBX, 25, 0x00000007, 0 },
> +     { X86_FEATURE_AVX512_4VNNIW,    CPUID_EDX,  2, 0x00000007, 0 },
> +     { X86_FEATURE_AVX512_4FMAPS,    CPUID_EDX,  3, 0x00000007, 0 },
> +     { X86_FEATURE_HW_PSTATE,        CPUID_EDX,  7, 0x80000007, 0 },
> +     { X86_FEATURE_CPB,              CPUID_EDX,  9, 0x80000007, 0 },
> +     { X86_FEATURE_PROC_FEEDBACK,    CPUID_EDX, 11, 0x80000007, 0 },
> +     { 0, 0, 0, 0, 0 }
>   };

This should be

> + static const struct cpuid_bit cpuid_bits[] = {
> +     { X86_FEATURE_APERFMPERF,       CPUID_ECX,  0, 0x00000006, 0 },
> +     { X86_FEATURE_EPB,              CPUID_ECX,  3, 0x00000006, 0 },
> +     { X86_FEATURE_INTEL_PT,         CPUID_EBX, 25, 0x00000007, 0 },
> +     { X86_FEATURE_AVX512_4VNNIW,    CPUID_EDX,  2, 0x00000007, 0 },
> +     { X86_FEATURE_AVX512_4FMAPS,    CPUID_EDX,  3, 0x00000007, 0 },
> ++    { X86_FEATURE_CAT_L3,           CPUID_EBX,  1, 0x00000010, 0 },
> ++    { X86_FEATURE_CAT_L2,           CPUID_EBX,  2, 0x00000010, 0 },
> ++    { X86_FEATURE_CDP_L3,           CPUID_ECX,  2, 0x00000010, 1 },
> +     { X86_FEATURE_HW_PSTATE,        CPUID_EDX,  7, 0x80000007, 0 },
> +     { X86_FEATURE_CPB,              CPUID_EDX,  9, 0x80000007, 0 },
> +     { X86_FEATURE_PROC_FEEDBACK,    CPUID_EDX, 11, 0x80000007, 0 },
> +     { 0, 0, 0, 0, 0 }
>   };

tip will carry a proper resolution today.

Thanks,

        tglx

Reply via email to