> S390 has no support for Elision and uses transaction begin/end/abort > instructions. The CPU measurement counter facility provides counters for > transaction end and transaction abort.
You don't need to implement the el-* events. > I have used this table (taken from arch/x86/events/intel/core.c) as giudeline: > /* Haswell special events */ > EVENT_ATTR_STR(tx-start, tx_start, "event=0xc9,umask=0x1"); > EVENT_ATTR_STR(tx-commit, tx_commit, "event=0xc9,umask=0x2"); > EVENT_ATTR_STR(tx-abort, tx_abort, "event=0xc9,umask=0x4"); > EVENT_ATTR_STR(tx-capacity, tx_capacity, "event=0x54,umask=0x2"); > EVENT_ATTR_STR(tx-conflict, tx_conflict, "event=0x54,umask=0x1"); > EVENT_ATTR_STR(el-start, el_start, "event=0xc8,umask=0x1"); > EVENT_ATTR_STR(el-commit, el_commit, "event=0xc8,umask=0x2"); > EVENT_ATTR_STR(el-abort, el_abort, "event=0xc8,umask=0x4"); > EVENT_ATTR_STR(el-capacity, el_capacity, "event=0x54,umask=0x2"); > EVENT_ATTR_STR(el-conflict, el_conflict, "event=0x54,umask=0x1"); > EVENT_ATTR_STR(cycles-t, cycles_t, "event=0x3c,in_tx=1"); > EVENT_ATTR_STR(cycles-ct, cycles_ct, > "event=0x3c,in_tx=1,in_tx_cp=1"); > > > So s390 can only support tx_commit and tx-abort symbolic names. > None of them show up in the transactions_attrs and transaction_limited_attrs > string variables used in builtin-stat.c file. We could change perf stat to fall back to only tx commit and tx abort. We already did that for one limited case. -Andi