Re: [tip: perf/core] x86/cpu: Add helper function to get the type of the current hybrid CPU

From: Dave Hansen
Date: Fri May 05 2023 - 12:42:52 EST


On 4/20/21 03:46, tip-bot2 for Ricardo Neri wrote:
> +#define X86_HYBRID_CPU_TYPE_ID_SHIFT 24
> +
> +/**
> + * get_this_hybrid_cpu_type() - Get the type of this hybrid CPU
> + *
> + * Returns the CPU type [31:24] (i.e., Atom or Core) of a CPU in
> + * a hybrid processor. If the processor is not hybrid, returns 0.
> + */
> +u8 get_this_hybrid_cpu_type(void)
> +{
> + if (!cpu_feature_enabled(X86_FEATURE_HYBRID_CPU))
> + return 0;
> +
> + return cpuid_eax(0x0000001a) >> X86_HYBRID_CPU_TYPE_ID_SHIFT;
> +}

Hi Folks,

Sorry to dredge up an old thread. But, where does this information
about "If the processor is not hybrid, returns 0." come from?

What is there to keep cpuid_eax(0x0000001a) from having 0x0 in those
bits? Seems to me like 0 is theoretically a valid hybrid CPU type. Right?