Subject: Re: [PATCH 6/6][v3] perf: Document the ABI of perf sysfs entries

From: Jiri Olsa <[email-masked]>
Date: Wed, 16 Jan 2013 12:30:13 +0100

On Tue, Jan 15, 2013 at 03:57:59PM -0300, Arnaldo Carvalho de Melo wrote:
> Em Wed, Jan 09, 2013 at 05:07:03PM -0800, Sukadev Bhattiprolu escreveu:
> > [PATCH 6/6][v3] perf: Document the ABI of perf sysfs entries
> > 
> > This patchset addes two new sets of files to sysfs:
> > 
> > 	- generic and POWER-specific perf events in /sys/devices/cpu/events/
> > 	- perf event config format in /sys/devices/cpu/format/event
> > 
> > Document the format of these files which would become part of the ABI.
> > 
> > Changelog[v3]:
> > 	[Greg KH] Include ABI documentation.
> 
> Jiri, can I have your ack on this one too?

hm, we already already 'format' definition but in testing section
(and we are missing 'events' definition there.. my bad)

anyway, after reading Documentation/ABI/README looks like we
should go for 'testing' section with this as well.. stable
seems scary at this point ;-)

jirka

> 
> Greg, all ok now?
> 
> - Arnaldo
>  
> > Signed-off-by: Sukadev Bhattiprolu <[email-masked]>
> > ---
> >  Documentation/ABI/stable/sysfs-devices-cpu-events |   54 +++++++++++++++++++++
> >  Documentation/ABI/stable/sysfs-devices-cpu-format |   27 ++++++++++
> >  2 files changed, 81 insertions(+), 0 deletions(-)
> >  create mode 100644 Documentation/ABI/stable/sysfs-devices-cpu-format
> > 
> > diff --git a/Documentation/ABI/stable/sysfs-devices-cpu-events b/Documentation/ABI/stable/sysfs-devices-cpu-events
> > index e69de29..f37d542 100644
> > --- a/Documentation/ABI/stable/sysfs-devices-cpu-events
> > +++ b/Documentation/ABI/stable/sysfs-devices-cpu-events
> > @@ -0,0 +1,54 @@
> > +What:		/sys/devices/cpu/events/
> > +		/sys/devices/cpu/events/branch-misses
> > +		/sys/devices/cpu/events/cache-references
> > +		/sys/devices/cpu/events/cache-misses
> > +		/sys/devices/cpu/events/stalled-cycles-frontend
> > +		/sys/devices/cpu/events/branch-instructions
> > +		/sys/devices/cpu/events/stalled-cycles-backend
> > +		/sys/devices/cpu/events/instructions
> > +		/sys/devices/cpu/events/cpu-cycles
> > +
> > +Date:		2013/01/08
> > +
> > +Contact:	Linux kernel mailing list <[email-masked]>
> > +
> > +Description:	Generic performance monitoring events
> > +
> > +		A collection of performance monitoring events that may be
> > +		supported by many/most CPUs. These events can be monitored
> > +		using the 'perf(1)' tool.
> > +
> > +		The contents of each file would look like:
> > +
> > +			event=0xNNNN
> > +
> > +		where 'N' is a hex digit.
> > +
> > +
> > +What: 		/sys/devices/cpu/events/PM_LD_MISS_L1
> > +		/sys/devices/cpu/events/PM_LD_REF_L1
> > +		/sys/devices/cpu/events/PM_CYC
> > +		/sys/devices/cpu/events/PM_BRU_FIN
> > +		/sys/devices/cpu/events/PM_GCT_NOSLOT_CYC
> > +		/sys/devices/cpu/events/PM_BRU_MPRED
> > +		/sys/devices/cpu/events/PM_INST_CMPL
> > +		/sys/devices/cpu/events/PM_CMPLU_STALL
> > +
> > +Date:		2013/01/08
> > +
> > +Contact:	Linux kernel mailing list <[email-masked]>
> > +		Linux Powerpc mailing list <[email-masked]>
> > +
> > +Description:	POWER specific performance monitoring events
> > +
> > +		A collection of performance monitoring events that may be
> > +		supported by the POWER CPU. These events can be monitored
> > +		using the 'perf(1)' tool.
> > +
> > +		These events may not be supported by other CPUs.
> > +
> > +		The contents of each file would look like:
> > +
> > +			event=0xNNNN
> > +
> > +		where 'N' is a hex digit.
> > diff --git a/Documentation/ABI/stable/sysfs-devices-cpu-format b/Documentation/ABI/stable/sysfs-devices-cpu-format
> > new file mode 100644
> > index 0000000..b15cfb2
> > --- /dev/null
> > +++ b/Documentation/ABI/stable/sysfs-devices-cpu-format
> > @@ -0,0 +1,27 @@
> > +What:		/sys/devices/cpu/format/
> > +		/sys/devices/cpu/format/event
> > +
> > +Date:		2013/01/08
> > +
> > +Contact:	Linux kernel mailing list <[email-masked]>
> > +
> > +Description:	Format of performance monitoring events
> > +
> > +		Each CPU/architecture may use different format to represent
> > +		the perf event.  The 'event' file describes the configuration
> > +		format of the performance monitoring event on the CPU/system.
> > +
> > +		The contents of each file would look like:
> > +
> > +			config:m-n
> > +
> > +		where m and n are the starting and ending bits that are
> > +		used to represent the event.
> > +
> > +		For example, on POWER,
> > +
> > +			$ cat /sys/devices/cpu/format/event
> > +			config:0-20
> > +
> > +		meaning that POWER uses the first 20-bits to represent a perf
> > +		event.
> > -- 
> > 1.7.1