Re: [PATCH 1/4] x86/cpu: Add and use new CPUID region helper

From: Huang, Kai
Date: Mon Mar 25 2024 - 13:38:09 EST



Nit:

> +
> +/* Returns true if the leaf exists and @value was populated */

^ is ?

> +static inline bool get_cpuid_region_leaf(u32 leaf, enum cpuid_regs_idx reg,
> + u32 *value)
> +{
> + u16 region = leaf >> 16;
> + u32 regs[4];
> +
> + if (cpuid_region_max_leaf(region) < leaf)
> + return false;
> +
> + cpuid(leaf, &regs[CPUID_EAX], &regs[CPUID_EBX],
> + &regs[CPUID_ECX], &regs[CPUID_EDX]);
> +
> + *value = regs[reg];
> +
> + return true;
> +}

I found despite the get_cpuid_region_leaf() returns true/false, the return value
is never used in this series. Instead, this series uses below pattern:

u32 data = 0; /* explicit initialization */

get_cpuid_region_leaf(leaf, ..., &data);

Which kinda implies the 'data' won't be touched if the requested leaf isn't
supported I suppose?

Since the return value is never used, should we consider just making this
function void?