提交 5024c1d7 编写于 作者: T Tejun Heo 提交者: Linus Torvalds

slub: use %*pb[l] to print bitmaps including cpumasks and nodemasks

printk and friends can now format 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 is an equivalent conversion but the whole function should be
  converted to use scnprinf famiily of functions rather than
  performing custom output length predictions in multiple places.
Signed-off-by: NTejun Heo <tj@kernel.org>
Acked-by: NChristoph Lameter <cl@linux.com>
Cc: Pekka Enberg <penberg@kernel.org>
Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
上级 f799b1a7
...@@ -4108,20 +4108,16 @@ static int list_locations(struct kmem_cache *s, char *buf, ...@@ -4108,20 +4108,16 @@ static int list_locations(struct kmem_cache *s, char *buf,
if (num_online_cpus() > 1 && if (num_online_cpus() > 1 &&
!cpumask_empty(to_cpumask(l->cpus)) && !cpumask_empty(to_cpumask(l->cpus)) &&
len < PAGE_SIZE - 60) { len < PAGE_SIZE - 60)
len += sprintf(buf + len, " cpus="); len += scnprintf(buf + len, PAGE_SIZE - len - 50,
len += cpulist_scnprintf(buf + len, " cpus=%*pbl",
PAGE_SIZE - len - 50, cpumask_pr_args(to_cpumask(l->cpus)));
to_cpumask(l->cpus));
}
if (nr_online_nodes > 1 && !nodes_empty(l->nodes) && if (nr_online_nodes > 1 && !nodes_empty(l->nodes) &&
len < PAGE_SIZE - 60) { len < PAGE_SIZE - 60)
len += sprintf(buf + len, " nodes="); len += scnprintf(buf + len, PAGE_SIZE - len - 50,
len += nodelist_scnprintf(buf + len, " nodes=%*pbl",
PAGE_SIZE - len - 50, nodemask_pr_args(&l->nodes));
l->nodes);
}
len += sprintf(buf + len, "\n"); len += sprintf(buf + len, "\n");
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册