On Thu, Jan 10, 2019 at 07:24:01PM +0800, Tan Hu wrote:
> @@ -12,13 +12,13 @@ static int show_softirqs(struct seq_file *p, void *v)
>       int i, j;
>  
>       seq_puts(p, "                    ");
> -     for_each_possible_cpu(i)
> +     for_each_online_cpu(i)
>               seq_printf(p, "CPU%-8d", i);
>       seq_putc(p, '\n');
>  
>       for (i = 0; i < NR_SOFTIRQS; i++) {
>               seq_printf(p, "%12s:", softirq_to_name[i]);
> -             for_each_possible_cpu(j)
> +             for_each_online_cpu(j)
>                       seq_printf(p, " %10u", kstat_softirqs_cpu(i, j));
>               seq_putc(p, '\n');
>       }

This should break userspace:

        https://sources.debian.org/src/netsniff-ng/0.6.5-1/ifpps.c/#L330

This code gets the number of "possible" CPUs from sysconf(3) and doesn't
parse header to find out which CPUs are online.

Reply via email to