[PATCH v6 09/17] sched/topology: Remove SD_SERIALIZE degeneration special case

From: Valentin Schneider
Date: Mon Aug 17 2020 - 07:30:46 EST


If there is only a single NUMA node in the system, the only NUMA topology
level that will be generated will be NODE (identity distance), which
doesn't have SD_SERIALIZE.

This means we don't need this special case in sd_parent_degenerate(), as
having the NODE level "naturally" covers it. Thus, remove it.

Suggested-by: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
Reviewed-by: Dietmar Eggemann <dietmar.eggemann@xxxxxxx>
Signed-off-by: Valentin Schneider <valentin.schneider@xxxxxxx>
---
kernel/sched/topology.c | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/kernel/sched/topology.c b/kernel/sched/topology.c
index 5f2bc99ff659..00ad7cef2ec1 100644
--- a/kernel/sched/topology.c
+++ b/kernel/sched/topology.c
@@ -183,11 +183,9 @@ sd_parent_degenerate(struct sched_domain *sd, struct sched_domain *parent)
return 0;

/* Flags needing groups don't count if only 1 group in parent */
- if (parent->groups == parent->groups->next) {
+ if (parent->groups == parent->groups->next)
pflags &= ~(SD_DEGENERATE_GROUPS_MASK | SD_PREFER_SIBLING);
- if (nr_node_ids == 1)
- pflags &= ~SD_SERIALIZE;
- }
+
if (~cflags & pflags)
return 0;

--
2.27.0