Hi,

Not an expert, but my understanding is that it's just technical
difficulty. Performance metrics are being saved in per-cpu buffer.
Having pid==-1 and cpu==-1 means that something would aggregate all
buffers in multiple CPUs to a single buffer. That code must exist,
either in userspace or in the kernel.

The kernel preferred that this code would be in userspace.

On Fri, Mar 13, 2015 at 8:49 PM, William Cohen <[email protected]> wrote:
> Hi All,
>
> I have a design question about the linux kernel perf support. A number of 
> /proc statistics aggregate data across all the cpus in the system.  Why the 
> does perf require the user-space application to enumerate all the processors 
> and do a perf_event_open syscall for each of the processors?  Why not have a 
> perf_event_open with pid=-1 and cpu=-1 mean system-wide event and aggregate 
> it in the kernel when the value is read?  The line below from design.txt 
> specifically say it is invalid.
>
> (Note: the combination of 'pid == -1' and 'cpu == -1' is not valid.)
>
> -Will
> --
> To unsubscribe from this list: send the line "unsubscribe linux-perf-users" in
> the body of a message to [email protected]
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-perf-users" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to