Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

perf json: Add s390 transaction counter definition

'perf stat' displays transactional counters using flag -T on x86. On
s390 use a JSON file defined metric named transaction to achieve the
same result.

Output before:

none

Output after:

[root@s35lp76 perf]# ./perf stat -M transaction -- \
~/mytesttx 1 >/tmp/111

Performance counter stats for '/root/mytesttx 1':

1 tx_c_tend # 13.0 transaction
1 tx_nc_tend
11 tx_nc_tabort
0 tx_c_tabort_special
0 tx_c_tabort_no_special

0.001061232 seconds time elapsed

[root@s35lp76 perf]#

Suggested-by: Andi Kleen <ak@linux.intel.com>
Signed-off-by: Thomas Richter <tmricht@linux.ibm.com>
Reviewed-by: Hendrik Brueckner <brueckner@linux.ibm.com>
Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
Link: http://lkml.kernel.org/r/20180621080452.61012-3-tmricht@linux.ibm.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>

authored by

Thomas Richter and committed by
Arnaldo Carvalho de Melo
83eb383e 9bacbced

+21
+7
tools/perf/pmu-events/arch/s390/cf_z13/transaction.json
··· 1 + [ 2 + { 3 + "BriefDescription": "Transaction count", 4 + "MetricName": "transaction", 5 + "MetricExpr": "TX_C_TEND + TX_NC_TEND + TX_NC_TABORT + TX_C_TABORT_SPECIAL + TX_C_TABORT_NO_SPECIAL" 6 + } 7 + ]
+7
tools/perf/pmu-events/arch/s390/cf_z14/transaction.json
··· 1 + [ 2 + { 3 + "BriefDescription": "Transaction count", 4 + "MetricName": "transaction", 5 + "MetricExpr": "TX_C_TEND + TX_NC_TEND + TX_NC_TABORT + TX_C_TABORT_SPECIAL + TX_C_TABORT_NO_SPECIAL" 6 + } 7 + ]
+7
tools/perf/pmu-events/arch/s390/cf_zec12/transaction.json
··· 1 + [ 2 + { 3 + "BriefDescription": "Transaction count", 4 + "MetricName": "transaction", 5 + "MetricExpr": "TX_C_TEND + TX_NC_TEND + TX_NC_TABORT + TX_C_TABORT_SPECIAL + TX_C_TABORT_NO_SPECIAL" 6 + } 7 + ]