Messages in this thread | | | From | KOSAKI Motohiro <> | Subject | Re: [PATCH] sched: fix the wrong mask_len | Date | Fri, 17 Oct 2008 19:25:54 +0900 (JST) |
| |
> If the 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 fix it. > > Signed-off-by: Miao Xie <miaox@cn.fujitsu.com> > > --- > kernel/sched_stats.h | 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/kernel/sched_stats.h b/kernel/sched_stats.h > index 8385d43..81365b3 100644 > --- a/kernel/sched_stats.h > +++ b/kernel/sched_stats.h > @@ -9,7 +9,7 @@ > static int show_schedstat(struct seq_file *seq, void *v) > { > 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); >
DIV_ROUND_UP() is better?
| |