All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] sched: Fix isolcpus boot option
@ 2009-11-30  0:05 Anton Blanchard
  2009-11-30  8:31 ` Peter Zijlstra
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Anton Blanchard @ 2009-11-30  0:05 UTC (permalink / raw)
  To: rusty, mingo, peterz; +Cc: linux-kernel


We allocate and zero cpu_isolated_map after the isolcpus __setup option
has run. This means cpu_isolated_map always ends up empty and if
CPUMASK_OFFSTACK is enabled we write to a cpumask that hasn't been
allocated.

To keep the fix to a minimum this patch stores a pointer to the cmdline
option and parses it after we allocate and zero the cpumask.

Signed-off-by: Anton Blanchard <anton@samba.org>
---

Might be worth moving cpu_isolated_map into kernel/cpu.c and treat it
like the other cpu masks but I figured that change would have trouble
making 2.6.32. Thoughts?

Index: linux.trees.git/kernel/sched.c
===================================================================
--- linux.trees.git.orig/kernel/sched.c	2009-11-28 09:35:29.000000000 +1100
+++ linux.trees.git/kernel/sched.c	2009-11-28 21:50:44.000000000 +1100
@@ -8098,10 +8098,14 @@ cpu_attach_domain(struct sched_domain *s
 /* cpus with isolated domains */
 static cpumask_var_t cpu_isolated_map;
 
-/* Setup the mask of cpus configured for isolated domains */
+/*
+ * Since it's too early to allocate cpu_isolated_map we just store
+ * a pointer to the parameter and allocate and initialize it in sched_init
+ */
+static __initdata char *isolated_cpu_str;
 static int __init isolated_cpu_setup(char *str)
 {
-	cpulist_parse(str, cpu_isolated_map);
+	isolated_cpu_str = str;
 	return 1;
 }
 
@@ -9650,6 +9654,7 @@ void __init sched_init(void)
 	alloc_cpumask_var(&nohz.ilb_grp_nohz_mask, GFP_NOWAIT);
 #endif
 	zalloc_cpumask_var(&cpu_isolated_map, GFP_NOWAIT);
+	cpulist_parse(isolated_cpu_str, cpu_isolated_map);
 #endif /* SMP */
 
 	perf_event_init();

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2009-12-02 10:46 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-11-30  0:05 [PATCH] sched: Fix isolcpus boot option Anton Blanchard
2009-11-30  8:31 ` Peter Zijlstra
2009-12-01  0:44 ` Rusty Russell
2009-12-02  3:39 ` Rusty Russell
2009-12-02 10:45   ` [tip:sched/core] " tip-bot for Rusty Russell

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.