提交 1034fc2f 编写于 作者: F Frederic Weisbecker

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: NFrederic 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>
上级 3ca277e4
...@@ -186,6 +186,13 @@ static int __cpuinit tick_nohz_cpu_down_callback(struct notifier_block *nfb, ...@@ -186,6 +186,13 @@ static int __cpuinit tick_nohz_cpu_down_callback(struct notifier_block *nfb,
return NOTIFY_OK; return NOTIFY_OK;
} }
/*
* Worst case string length in chunks of CPU range seems 2 steps
* separations: 0,2,4,6,...
* This is NR_CPUS + sizeof('\0')
*/
static char __initdata nohz_ext_buf[NR_CPUS + 1];
static int __init init_tick_nohz_extended(void) static int __init init_tick_nohz_extended(void)
{ {
cpumask_var_t online_nohz; cpumask_var_t online_nohz;
...@@ -225,6 +232,9 @@ static int __init init_tick_nohz_extended(void) ...@@ -225,6 +232,9 @@ static int __init init_tick_nohz_extended(void)
put_online_cpus(); put_online_cpus();
free_cpumask_var(online_nohz); free_cpumask_var(online_nohz);
cpulist_scnprintf(nohz_ext_buf, sizeof(nohz_ext_buf), nohz_extended_mask);
pr_info("NO_HZ: Full dynticks CPUs: %s.\n", nohz_ext_buf);
return 0; return 0;
} }
core_initcall(init_tick_nohz_extended); core_initcall(init_tick_nohz_extended);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册