sched: fix the wrong mask_len

If NR_CPUS isn't a multiple of 32, we get a truncated string of sched
domains by catting /proc/schedstat. This is caused by the wrong mask_len.

This patch fixes it.

Signed-off-by: Miao Xie <miaox@cn.fujitsu.com>
Cc: <stable@kernel.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
Miao Xie 2008-10-17 18:17:46 +08:00 committed by Ingo Molnar
parent 0f1f6dec95
commit c851c8676b
1 changed files with 1 additions and 1 deletions

View File

@ -9,7 +9,7 @@
static int show_schedstat(struct seq_file *seq, void *v) static int show_schedstat(struct seq_file *seq, void *v)
{ {
int cpu; int cpu;
int mask_len = NR_CPUS/32 * 9; int mask_len = (NR_CPUS/32 + 1) * 9;
char *mask_str = kmalloc(mask_len, GFP_KERNEL); char *mask_str = kmalloc(mask_len, GFP_KERNEL);
if (mask_str == NULL) if (mask_str == NULL)