Re: [RFC PATCH] x86/tsc: use topology_max_packages() in tsc watchdog check

From: Dave Hansen
Date: Mon Oct 17 2022 - 19:15:43 EST


On 10/17/22 06:29, Feng Tang wrote:
> + if (boot_cpu_has(X86_FEATURE_CONSTANT_TSC) &&
> + boot_cpu_has(X86_FEATURE_NONSTOP_TSC) &&
> + boot_cpu_has(X86_FEATURE_TSC_ADJUST) &&
> + topology_max_packages() <= 2)
> + clocksource_tsc.flags &= ~CLOCK_SOURCE_MUST_VERIFY;

I couldn't help but notice the comment in here:

> void __init calculate_max_logical_packages(void)
> {
> int ncpus;
>
> /*
> * Today neither Intel nor AMD support heterogeneous systems so
> * extrapolate the boot cpu's data to all packages.
> */
> ncpus = cpu_data(0).booted_cores * topology_max_smt_threads();
> __max_logical_packages = DIV_ROUND_UP(total_cpus, ncpus);
> pr_info("Max logical packages: %u\n", __max_logical_packages);
> }

Could you double check for me that the Alder Lake combination Core/Atom
CPUs don't count as "heterogeneous systems" in this case?