On Wed, 18 Mar 2015 10:35:39 +0800 "Wang, Yalin" <yalin.w...@sonymobile.com> 
wrote:

> This patch change /proc/stat to show each cpu,
> we show each present cpus instead of eacn online cpu,
> because some cpus are online / offline dynamically,
> we should also show its cputime even it is offline,
> some lib will read this file to detect cpu numbers,
> we should also return the real present cpu numbers,
> not just online cpus.

/proc/cpuinfo also skips offline CPUs.

> --- a/fs/proc/stat.c
> +++ b/fs/proc/stat.c
> @@ -130,7 +130,7 @@ static int show_stat(struct seq_file *p, void *v)
>       seq_put_decimal_ull(p, ' ', cputime64_to_clock_t(guest_nice));
>       seq_putc(p, '\n');
>  
> -     for_each_online_cpu(i) {
> +     for_each_present_cpu(i) {
>               /* Copy values here to work around gcc-2.95.3, gcc-2.96 */
>               user = kcpustat_cpu(i).cpustat[CPUTIME_USER];
>               nice = kcpustat_cpu(i).cpustat[CPUTIME_NICE];

It's a non-back-compatible userspace interface change and I don't know
what might break as a result.  For example, anyone who is using
/proc/stat to find out which CPUs are online will get a surprise!


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to