Files
linux/arch/powerpc/kernel
Peter Zijlstra 7b732a7504 perf_counter: new output ABI - part 1
Impact: Rework the perfcounter output ABI

use sys_read() only for instant data and provide mmap() output for all
async overflow data.

The first mmap() determines the size of the output buffer. The mmap()
size must be a PAGE_SIZE multiple of 1+pages, where pages must be a
power of 2 or 0. Further mmap()s of the same fd must have the same
size. Once all maps are gone, you can again mmap() with a new size.

In case of 0 extra pages there is no data output and the first page
only contains meta data.

When there are data pages, a poll() event will be generated for each
full page of data. Furthermore, the output is circular. This means
that although 1 page is a valid configuration, its useless, since
we'll start overwriting it the instant we report a full page.

Future work will focus on the output format (currently maintained)
where we'll likey want each entry denoted by a header which includes a
type and length.

Further future work will allow to splice() the fd, also containing the
async overflow data -- splice() would be mutually exclusive with
mmap() of the data.

Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Paul Mackerras <paulus@samba.org>
Orig-LKML-Reference: <20090323172417.470536358@chello.nl>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
2009-04-06 09:30:27 +02:00
..
2008-12-21 14:21:16 +11:00
2008-12-21 14:21:16 +11:00
…
…
2008-06-30 22:31:00 +10:00
2008-12-03 20:46:36 +11:00
2009-03-03 13:30:03 +11:00
2008-12-31 18:07:42 -05:00
2008-05-23 22:43:11 +02:00
…
2008-12-21 14:21:16 +11:00
2008-11-05 22:08:28 +11:00
…
…
2009-04-02 19:04:51 -07:00
…
2008-12-21 14:21:16 +11:00
…
…
…