On 26.01.2026 18:53, Andrew Cooper wrote:
> --- a/xen/arch/x86/cpu/common.c
> +++ b/xen/arch/x86/cpu/common.c
> @@ -455,10 +455,13 @@ void reset_cpuinfo(struct cpuinfo_x86 *c, bool
> keep_basic)
> CPU_DATA_INIT((*c));
> }
>
> -static void generic_identify(struct cpuinfo_x86 *c)
> +void identify_cpu(struct cpuinfo_x86 *c)
> {
> uint64_t val;
> u32 eax, ebx, ecx, edx, tmp;
> + int i;
> +
> + reset_cpuinfo(c, false);
>
> /* Get vendor name */
> cpuid(0, &c->cpuid_level, &ebx, &ecx, &edx);
> @@ -550,17 +553,6 @@ static void generic_identify(struct cpuinfo_x86 *c)
> c->x86_capability[FEATURESET_m10Al] = val;
> c->x86_capability[FEATURESET_m10Ah] = val >> 32;
> }
> -}
> -
> -/*
> - * This does the hard work of actually picking apart the CPU stuff...
> - */
> -void identify_cpu(struct cpuinfo_x86 *c)
> -{
> - int i;
> -
> - reset_cpuinfo(c, false);
> - generic_identify(c);
>
> #ifdef NOISY_CAPS
> printk(KERN_DEBUG "CPU: After vendor identify, caps:");
To aid reducing the gap between the calls of .c_early_init() and .c_init()
(that the next patch's description talks about), wouldn't it make sense to
also drop this NOISY_CAPS thingy right here? The log message saying "After
vendor identify" isn't quite accurate anyway.
Jan