On Mon, May 01, 2017 at 05:13:26PM -0400, Rik van Riel wrote:
> On Fri, 2017-04-28 at 15:20 +0200, Peter Zijlstra wrote:
> > Signed-off-by: Peter Zijlstra (Intel) <pet...@infradead.org>
> 
> This could use a changelog.

Yes indeed... I put off writing one because $hard, and clearly I forgot
entirely :-/

How's this?

---
Subject: sched/topology,debug: Verify the first group matches the child domain
From: Peter Zijlstra <pet...@infradead.org>
Date: Fri Apr 14 18:20:48 CEST 2017

We want sched_groups to be sibling child domains (or individual CPUs
when there are no child domains). Furthermore, since the first group
of a domain should include the CPU of that domain, the first group of
each domain should match the child domain.

Verify this is indeed so.

Signed-off-by: Peter Zijlstra (Intel) <pet...@infradead.org>
---
 kernel/sched/topology.c |    6 ++++++
 1 file changed, 6 insertions(+)

--- a/kernel/sched/topology.c
+++ b/kernel/sched/topology.c
@@ -93,6 +93,12 @@ static int sched_domain_debug_one(struct
                                group->sgc->capacity);
                }
 
+               if (group == sd->groups && sd->child &&
+                   !cpumask_equal(sched_domain_span(sd->child),
+                                  sched_group_cpus(group))) {
+                       printk(KERN_ERR "ERROR: domain->groups does not match 
domain->child\n");
+               }
+
                group = group->next;
 
                if (group != sd->groups)

Reply via email to