[Fwd: Re: SMP Panic caused by [PATCH] sched: consolidate scheddomains]

From: James Bottomley
Date: Fri Sep 03 2004 - 16:28:06 EST


Could we get this in please? The current screw up in the scheduling
domain patch means that any architecture that actually hotplugs CPUs
will crash in find_busiest_group() ... and I notice this has just bitten
the z Series people...

James

--- Begin Message --- On Sun, Aug 29, 2004 at 10:40:39AM -0700, William Lee Irwin III wrote:
> Okay, if you prefer the #ifdef:

And for the other half of it:


Index: wait-2.6.9-rc1-mm1/kernel/sched.c
===================================================================
--- wait-2.6.9-rc1-mm1.orig/kernel/sched.c 2004-08-28 11:41:47.000000000 -0700
+++ wait-2.6.9-rc1-mm1/kernel/sched.c 2004-08-29 10:46:52.543081208 -0700
@@ -4224,7 +4224,11 @@
sd = &per_cpu(phys_domains, i);
group = cpu_to_phys_group(i);
*sd = SD_CPU_INIT;
+#ifdef CONFIG_NUMA
sd->span = nodemask;
+#else
+ sd->span = cpu_possible_map;
+#endif
sd->parent = p;
sd->groups = &sched_group_phys[group];

@@ -4262,6 +4266,7 @@
&cpu_to_isolated_group);
}

+#ifdef CONFIG_NUMA
/* Set up physical groups */
for (i = 0; i < MAX_NUMNODES; i++) {
cpumask_t nodemask = node_to_cpumask(i);
@@ -4273,6 +4278,10 @@
init_sched_build_groups(sched_group_phys, nodemask,
&cpu_to_phys_group);
}
+#else
+ init_sched_build_groups(sched_group_phys, cpu_possible_map,
+ &cpu_to_phys_group);
+#endif

#ifdef CONFIG_NUMA
/* Set up node groups */

--- End Message ---