Re: [PATCH] sched/topology: Covered all cpus of same node in asymmetric node setups

From: Peter Zijlstra
Date: Mon Jul 31 2023 - 09:36:32 EST


On Sun, Jul 30, 2023 at 06:22:03AM +0800, Bing Huang wrote:
> in asymmetric node setups, if one cpu'sd spans is empty in some depth,
> others in same node do

Sorry, what?!?

> Signed-off-by: Bing Huang <huangbing@xxxxxxxxxx>
> ---
> kernel/sched/topology.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/kernel/sched/topology.c b/kernel/sched/topology.c
> index 7cfcfe5d27b9..8c5372ad7694 100644
> --- a/kernel/sched/topology.c
> +++ b/kernel/sched/topology.c
> @@ -1045,8 +1045,10 @@ build_overlap_sched_groups(struct sched_domain *sd, int cpu)
> * Domains should always include the CPU they're built on, so
> * check that.
> */
> - if (!cpumask_test_cpu(i, sched_domain_span(sibling)))
> + if (!cpumask_test_cpu(i, sched_domain_span(sibling))) {
> + cpumask_or(covered, covered, cpumask_of_node(cpu_to_node(i)));
> continue;
> + }
>
> /*
> * Usually we build sched_group by sibling's child sched_domain
> --
> 2.25.1
>