diff options
author | Tejun Heo <tj@kernel.org> | 2015-02-13 17:37:59 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2015-02-14 00:21:38 -0500 |
commit | 5024c1d71b988ca5da94e52461626e9930015681 (patch) | |
tree | 2d4c5f97a622a85b2712388f703375b5af624b80 /mm/slub.c | |
parent | f799b1a7fbd24cf0dc4fa33818c172bd70571bd1 (diff) |
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: Tejun Heo <tj@kernel.org>
Acked-by: Christoph Lameter <cl@linux.com>
Cc: Pekka Enberg <penberg@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'mm/slub.c')
-rw-r--r-- | mm/slub.c | 20 |
1 files changed, 8 insertions, 12 deletions
@@ -4108,20 +4108,16 @@ static int list_locations(struct kmem_cache *s, char *buf, | |||
4108 | 4108 | ||
4109 | if (num_online_cpus() > 1 && | 4109 | if (num_online_cpus() > 1 && |
4110 | !cpumask_empty(to_cpumask(l->cpus)) && | 4110 | !cpumask_empty(to_cpumask(l->cpus)) && |
4111 | len < PAGE_SIZE - 60) { | 4111 | len < PAGE_SIZE - 60) |
4112 | len += sprintf(buf + len, " cpus="); | 4112 | len += scnprintf(buf + len, PAGE_SIZE - len - 50, |
4113 | len += cpulist_scnprintf(buf + len, | 4113 | " cpus=%*pbl", |
4114 | PAGE_SIZE - len - 50, | 4114 | cpumask_pr_args(to_cpumask(l->cpus))); |
4115 | to_cpumask(l->cpus)); | ||
4116 | } | ||
4117 | 4115 | ||
4118 | if (nr_online_nodes > 1 && !nodes_empty(l->nodes) && | 4116 | if (nr_online_nodes > 1 && !nodes_empty(l->nodes) && |
4119 | len < PAGE_SIZE - 60) { | 4117 | len < PAGE_SIZE - 60) |
4120 | len += sprintf(buf + len, " nodes="); | 4118 | len += scnprintf(buf + len, PAGE_SIZE - len - 50, |
4121 | len += nodelist_scnprintf(buf + len, | 4119 | " nodes=%*pbl", |
4122 | PAGE_SIZE - len - 50, | 4120 | nodemask_pr_args(&l->nodes)); |
4123 | l->nodes); | ||
4124 | } | ||
4125 | 4121 | ||
4126 | len += sprintf(buf + len, "\n"); | 4122 | len += sprintf(buf + len, "\n"); |
4127 | } | 4123 | } |