diff options
Diffstat (limited to 'kernel/sched/stats.c')
| -rw-r--r-- | kernel/sched/stats.c | 11 |
1 files changed, 2 insertions, 9 deletions
diff --git a/kernel/sched/stats.c b/kernel/sched/stats.c index a476bea17fbc..87e2c9f0c33e 100644 --- a/kernel/sched/stats.c +++ b/kernel/sched/stats.c | |||
| @@ -15,11 +15,6 @@ | |||
| 15 | static int show_schedstat(struct seq_file *seq, void *v) | 15 | static int show_schedstat(struct seq_file *seq, void *v) |
| 16 | { | 16 | { |
| 17 | int cpu; | 17 | int cpu; |
| 18 | int mask_len = DIV_ROUND_UP(NR_CPUS, 32) * 9; | ||
| 19 | char *mask_str = kmalloc(mask_len, GFP_KERNEL); | ||
| 20 | |||
| 21 | if (mask_str == NULL) | ||
| 22 | return -ENOMEM; | ||
| 23 | 18 | ||
| 24 | if (v == (void *)1) { | 19 | if (v == (void *)1) { |
| 25 | seq_printf(seq, "version %d\n", SCHEDSTAT_VERSION); | 20 | seq_printf(seq, "version %d\n", SCHEDSTAT_VERSION); |
| @@ -50,9 +45,8 @@ static int show_schedstat(struct seq_file *seq, void *v) | |||
| 50 | for_each_domain(cpu, sd) { | 45 | for_each_domain(cpu, sd) { |
| 51 | enum cpu_idle_type itype; | 46 | enum cpu_idle_type itype; |
| 52 | 47 | ||
| 53 | cpumask_scnprintf(mask_str, mask_len, | 48 | seq_printf(seq, "domain%d %*pb", dcount++, |
| 54 | sched_domain_span(sd)); | 49 | cpumask_pr_args(sched_domain_span(sd))); |
| 55 | seq_printf(seq, "domain%d %s", dcount++, mask_str); | ||
| 56 | for (itype = CPU_IDLE; itype < CPU_MAX_IDLE_TYPES; | 50 | for (itype = CPU_IDLE; itype < CPU_MAX_IDLE_TYPES; |
| 57 | itype++) { | 51 | itype++) { |
| 58 | seq_printf(seq, " %u %u %u %u %u %u %u %u", | 52 | seq_printf(seq, " %u %u %u %u %u %u %u %u", |
| @@ -76,7 +70,6 @@ static int show_schedstat(struct seq_file *seq, void *v) | |||
| 76 | rcu_read_unlock(); | 70 | rcu_read_unlock(); |
| 77 | #endif | 71 | #endif |
| 78 | } | 72 | } |
| 79 | kfree(mask_str); | ||
| 80 | return 0; | 73 | return 0; |
| 81 | } | 74 | } |
| 82 | 75 | ||
