[PATCH 0/2] perf: add documentation for sysfs interfaces
From: Cody P Schafer <hidden>
Date: 2014-03-06 00:45:20
3 messages, 1 author, 2014-03-06 · open the first message on its own page
From: Cody P Schafer <hidden>
Date: 2014-03-06 00:45:20
Documents <pmu>/event/<event>{,.scale,.units} and then removes the redundant
POWER docs.
Slightly restricts <event> names to avoid API funkyness when we add new
<event>.????? files ('.' forbidden in event names).
The contact is currently lkml, it would be very useful to have a perf
development list to put here instead (acme, feel like making one?).
--
Cody P Schafer (2):
perf Documentation: sysfs events/ interfaces
perf Documentation: remove duplicated docs for powerpc cpu specific
events
.../testing/sysfs-bus-event_source-devices-events | 92 +++++++++++-----------
1 file changed, 47 insertions(+), 45 deletions(-)
--
1.9.0
From: Cody P Schafer <hidden>
Date: 2014-03-06 00:46:51
Listing specific events doesn't actually help us at all here because: - these events actually vary between different ppc processors, they aren't garunteed to be present. - the documentation of the file contents is now duplicated by the docs for arbitrary event file contents. Signed-off-by: Cody P Schafer <redacted> --- .../testing/sysfs-bus-event_source-devices-events | 57 ---------------------- 1 file changed, 57 deletions(-)
diff --git a/Documentation/ABI/testing/sysfs-bus-event_source-devices-events b/Documentation/ABI/testing/sysfs-bus-event_source-devices-events
index 5393e1ed6..50c30a6 100644
--- a/Documentation/ABI/testing/sysfs-bus-event_source-devices-events
+++ b/Documentation/ABI/testing/sysfs-bus-event_source-devices-events@@ -26,63 +26,6 @@ Description: Generic performance monitoring events "raw code" for the perf event identified by the file's "basename". - -What: /sys/devices/cpu/events/PM_1PLUS_PPC_CMPL - /sys/devices/cpu/events/PM_BRU_FIN - /sys/devices/cpu/events/PM_BR_MPRED - /sys/devices/cpu/events/PM_CMPLU_STALL - /sys/devices/cpu/events/PM_CMPLU_STALL_BRU - /sys/devices/cpu/events/PM_CMPLU_STALL_DCACHE_MISS - /sys/devices/cpu/events/PM_CMPLU_STALL_DFU - /sys/devices/cpu/events/PM_CMPLU_STALL_DIV - /sys/devices/cpu/events/PM_CMPLU_STALL_ERAT_MISS - /sys/devices/cpu/events/PM_CMPLU_STALL_FXU - /sys/devices/cpu/events/PM_CMPLU_STALL_IFU - /sys/devices/cpu/events/PM_CMPLU_STALL_LSU - /sys/devices/cpu/events/PM_CMPLU_STALL_REJECT - /sys/devices/cpu/events/PM_CMPLU_STALL_SCALAR - /sys/devices/cpu/events/PM_CMPLU_STALL_SCALAR_LONG - /sys/devices/cpu/events/PM_CMPLU_STALL_STORE - /sys/devices/cpu/events/PM_CMPLU_STALL_THRD - /sys/devices/cpu/events/PM_CMPLU_STALL_VECTOR - /sys/devices/cpu/events/PM_CMPLU_STALL_VECTOR_LONG - /sys/devices/cpu/events/PM_CYC - /sys/devices/cpu/events/PM_GCT_NOSLOT_BR_MPRED - /sys/devices/cpu/events/PM_GCT_NOSLOT_BR_MPRED_IC_MISS - /sys/devices/cpu/events/PM_GCT_NOSLOT_CYC - /sys/devices/cpu/events/PM_GCT_NOSLOT_IC_MISS - /sys/devices/cpu/events/PM_GRP_CMPL - /sys/devices/cpu/events/PM_INST_CMPL - /sys/devices/cpu/events/PM_LD_MISS_L1 - /sys/devices/cpu/events/PM_LD_REF_L1 - /sys/devices/cpu/events/PM_RUN_CYC - /sys/devices/cpu/events/PM_RUN_INST_CMPL - -Date: 2013/01/08 - -Contact: Linux kernel mailing list <linux-kernel@vger.kernel.org> - Linux Powerpc mailing list <linuxppc-dev@ozlabs.org> - -Description: POWER-systems 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 and the number '0xNNNN' shows the - "raw code" for the perf event identified by the file's - "basename". - - Further, multiple terms like 'event=0xNNNN' can be specified - and separated with comma. All available terms are defined in - the /sys/bus/event_source/devices/<dev>/format file. - What: /sys/bus/event_source/devices/<pmu>/events/<event> Date: 2014/02/24 Contact: Linux kernel mailing list <linux-kernel@vger.kernel.org>
--
1.9.0
From: Cody P Schafer <hidden>
Date: 2014-03-06 00:47:46
Add documentation for the <event>, <event>.scale, and <event>.unit files in sysfs. <event>.scale and <event>.unit were undocumented. <event> was previously documented only for specific powerpc pmu events. I've added a restriction that event names cannot contain '.' characters so we can avoid breaking the API when we (inevitably) add more 'event.????' files. Signed-off-by: Cody P Schafer <redacted> --- .../testing/sysfs-bus-event_source-devices-events | 59 ++++++++++++++++++++++ 1 file changed, 59 insertions(+)
diff --git a/Documentation/ABI/testing/sysfs-bus-event_source-devices-events b/Documentation/ABI/testing/sysfs-bus-event_source-devices-events
index 3c1cc24..5393e1ed6 100644
--- a/Documentation/ABI/testing/sysfs-bus-event_source-devices-events
+++ b/Documentation/ABI/testing/sysfs-bus-event_source-devices-events@@ -82,3 +82,62 @@ Description: POWER-systems specific performance monitoring events Further, multiple terms like 'event=0xNNNN' can be specified and separated with comma. All available terms are defined in the /sys/bus/event_source/devices/<dev>/format file. + +What: /sys/bus/event_source/devices/<pmu>/events/<event> +Date: 2014/02/24 +Contact: Linux kernel mailing list <linux-kernel@vger.kernel.org> +Description: Per-pmu performance monitoring events specific to the running system + + Each file (with a name not containing a '.') in the 'events' + directory describes a single performance monitoring event + supported by the <pmu>. The name of the file is the name of the event. + + File contents: + + <term>[=<value>][,<term>[=<value>]]... + + Where <term> is one of the terms listed under + /sys/bus/event_source/devices/<pmu>/format/ and <value> is + a number is base-16 format with a '0x' prefix (lowercase only). + If a <term> is specified alone (without an assigned value), it + is implied that 0x1 is assigned to that <term>. + + Examples (each of these lines would be in a seperate file): + + event=0x2abc + event=0x423,inv,cmask=0x3 + domain=0x1,offset=0x8,starting_index=0xffff + + Each of the assignments indicates a value to be assigned to a + particular set of bits (as defined by the format file + corresponding to the <term>) in the perf_event structure passed + to the perf_open syscall. + +What: /sys/bus/event_source/devices/<pmu>/events/<event>.unit +Date: 2014/02/24 +Contact: Linux kernel mailing list <linux-kernel@vger.kernel.org> +Description: Perf event units + + A string specifying the English plural numerical unit that <event> + (once multiplied by <event>.scale) represents. + + Example: + + Joules + +What: /sys/bus/event_source/devices/<pmu>/events/<event>.scale +Date: 2014/02/24 +Contact: Linux kernel mailing list <linux-kernel@vger.kernel.org> +Description: Perf event scaling factors + + A string representing a floating point value expressed in + scientific notation to be multiplied by the event count + recieved from the kernel to match the unit specified in the + <event>.unit file. + + Example: + + 2.3283064365386962890625e-10 + + This is provided to avoid performing floating point arithmetic + in the kernel.
--
1.9.0