aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/time
diff options
context:
space:
mode:
authorFrederic Weisbecker <fweisbec@gmail.com>2013-03-26 10:04:50 -0400
committerFrederic Weisbecker <fweisbec@gmail.com>2013-04-03 08:00:48 -0400
commit1034fc2f41aaf32f782a9362178f9a236ac5a50a (patch)
tree0c6a5e0e6cbd9c02f0c1049ba0d1292a8ac7bb3e /kernel/time
parent3ca277e41914ab344214ed50a41c14c48ae973f3 (diff)
nohz: Print final full dynticks CPUs range on boot
Given that we apply a few restrictions on the full dynticks CPUs range (keep an online timekeeper oustide the range, then in the future have the range be an RCU nocb CPUs subset), let's print the final resulting range of full dynticks CPUs to the user so that he knows what's really going to run. Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com> Cc: Andrew Morton <akpm@linux-foundation.org> Cc: Chris Metcalf <cmetcalf@tilera.com> Cc: Christoph Lameter <cl@linux.com> Cc: Geoff Levand <geoff@infradead.org> Cc: Gilad Ben Yossef <gilad@benyossef.com> Cc: Hakan Akkan <hakanakkan@gmail.com> Cc: Ingo Molnar <mingo@kernel.org> Cc: Kevin Hilman <khilman@linaro.org> Cc: Li Zhong <zhong@linux.vnet.ibm.com> Cc: Namhyung Kim <namhyung.kim@lge.com> Cc: Paul E. McKenney <paulmck@linux.vnet.ibm.com> Cc: Paul Gortmaker <paul.gortmaker@windriver.com> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Steven Rostedt <rostedt@goodmis.org> Cc: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'kernel/time')
-rw-r--r--kernel/time/tick-sched.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/kernel/time/tick-sched.c b/kernel/time/tick-sched.c
index ccfc2086cd4b..e057d338daa4 100644
--- a/kernel/time/tick-sched.c
+++ b/kernel/time/tick-sched.c
@@ -186,6 +186,13 @@ static int __cpuinit tick_nohz_cpu_down_callback(struct notifier_block *nfb,
186 return NOTIFY_OK; 186 return NOTIFY_OK;
187} 187}
188 188
189/*
190 * Worst case string length in chunks of CPU range seems 2 steps
191 * separations: 0,2,4,6,...
192 * This is NR_CPUS + sizeof('\0')
193 */
194static char __initdata nohz_ext_buf[NR_CPUS + 1];
195
189static int __init init_tick_nohz_extended(void) 196static int __init init_tick_nohz_extended(void)
190{ 197{
191 cpumask_var_t online_nohz; 198 cpumask_var_t online_nohz;
@@ -225,6 +232,9 @@ static int __init init_tick_nohz_extended(void)
225 put_online_cpus(); 232 put_online_cpus();
226 free_cpumask_var(online_nohz); 233 free_cpumask_var(online_nohz);
227 234
235 cpulist_scnprintf(nohz_ext_buf, sizeof(nohz_ext_buf), nohz_extended_mask);
236 pr_info("NO_HZ: Full dynticks CPUs: %s.\n", nohz_ext_buf);
237
228 return 0; 238 return 0;
229} 239}
230core_initcall(init_tick_nohz_extended); 240core_initcall(init_tick_nohz_extended);