Re: [PATCH 14/32] rcu: use %*pb[l] to print bitmaps including cpumasks and nodemasks

From: Paul E. McKenney
Date: Sat Jan 24 2015 - 16:17:00 EST


On Sat, Jan 24, 2015 at 09:03:20AM -0500, Tejun Heo wrote:
> printk and friends can now formap bitmaps using '%*pb[l]'. cpumask
> and nodemask also provide cpumask_pr_args() and nodemask_pr_args()
> respectively which can be used to generate the two printf arguments
> necessary to format the specified cpu/nodemask.
>
> This patch is dependent on the following two patches.
>
> lib/vsprintf: implement bitmap printing through '%*pb[l]'
> cpumask, nodemask: implement cpumask/nodemask_pr_args()
>
> Please wait till the forementioned patches are merged to mainline
> before applying to subsystem trees.
>
> Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
> Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
> Cc: "Paul E. McKenney" <paulmck@xxxxxxxxxxxxxxxxxx>

Nice!!! I would be happy to take these, if you would like. If so, please
let me know when the two patches above hit mainline.

Thanx, Paul

> ---
> kernel/rcu/tree_plugin.h | 5 ++---
> 1 file changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/kernel/rcu/tree_plugin.h b/kernel/rcu/tree_plugin.h
> index 3ec85cb..26e04cf 100644
> --- a/kernel/rcu/tree_plugin.h
> +++ b/kernel/rcu/tree_plugin.h
> @@ -53,7 +53,6 @@ DEFINE_PER_CPU(char, rcu_cpu_has_work);
> static cpumask_var_t rcu_nocb_mask; /* CPUs to have callbacks offloaded. */
> static bool have_rcu_nocb_mask; /* Was rcu_nocb_mask allocated? */
> static bool __read_mostly rcu_nocb_poll; /* Offload kthread are to poll. */
> -static char __initdata nocb_buf[NR_CPUS * 5];
> #endif /* #ifdef CONFIG_RCU_NOCB_CPU */
>
> /*
> @@ -2513,8 +2512,8 @@ void __init rcu_init_nohz(void)
> cpumask_and(rcu_nocb_mask, cpu_possible_mask,
> rcu_nocb_mask);
> }
> - cpulist_scnprintf(nocb_buf, sizeof(nocb_buf), rcu_nocb_mask);
> - pr_info("\tOffload RCU callbacks from CPUs: %s.\n", nocb_buf);
> + pr_info("\tOffload RCU callbacks from CPUs: %*pbl.\n",
> + cpumask_pr_args(rcu_nocb_mask));
> if (rcu_nocb_poll)
> pr_info("\tPoll for callbacks from no-CBs CPUs.\n");
>
> --
> 2.1.0
>

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/