Re: [PATCH v2] x86,sched: allow topologies where NUMA nodes share an LLC

From: Tim Chen
Date: Thu Mar 22 2018 - 20:42:49 EST


On 03/22/2018 01:49 PM, Alison Schofield wrote:
>
> + */
> + if (!topology_same_node(c, o) &&
> + (c->x86_vendor == X86_VENDOR_INTEL &&
> + c->x86_model == INTEL_FAM6_SKYLAKE_X)) {
> + /* Use NUMA instead of coregroups for scheduling: */
> + x86_has_numa_in_package = true;

x86_has_numa_in_package will only be set true for SKYLAKE in the above?

This boolean probably should be set for (!topology_same_node(c, o) && match_die(c, o)) and not
dependent on cpu family. Only the return value should depend on cpu family.

Tim


> +
> + /*
> + * Return value doesn't actually matter because we
> + * are throwing away coregroups for scheduling anyway.
> + * Return false to bypass topology broken bug messages
> + * and fixups in sched_domain().
> + */
> + return false;
> + }
> +
> + return topology_sane(c, o, "llc");
> }
>
> /*
> @@ -454,12 +492,6 @@ static struct sched_domain_topology_level x86_topology[] = {
> { NULL, },
> };
>
> -/*
> - * Set if a package/die has multiple NUMA nodes inside.
> - * AMD Magny-Cours and Intel Cluster-on-Die have this.
> - */
> -static bool x86_has_numa_in_package;
> -
> void set_cpu_sibling_map(int cpu)
> {
> bool has_smt = smp_num_siblings > 1;
>