Patch set adds a new field called 'mem_hops' in the perf_mem_data_src structure which can be used to represent intra-node/package or inter-node/off-package details. This field is of size 3 bits where PERF_MEM_HOPS_{NA, 0..6} value can be used to present different hop levels data.
Patch 1 of the patch-set adds a comment about current state of PERF_MEM_LVL_* namespace and remove an extra line present in perf_mem__lvl_scnprintf function. Patch 2 & 3 adds tool and kernel side changes to add mem_hops field. Patch 4 of the patch-set fix the data source encodings to represent L2.1/L3.1 cache access data for powerpc platform. Changelog: v2 -> v3 - Since added field HOPS related to NUMA, update the data presented by HOPS_0 to denotes accesses from 'remote core, same node' as suggested by Peter Zijlstra. - Link to the patchset v2: https://lkml.org/lkml/2021/10/5/271 v1 -> v2: - Rather then adding new macros for L2.1/L3.1 (same chip, different core) entries as part of field lvlnum, we are introducing new field called 'mem_hops' which can be used to get hops level data(intra-chip/package or inter-chip/off-package details). As suggested by Peter Zijlstra. - Using OnChip to denote data accesses from 'another core of same chip' is not too clear. Update it to 'remote core, same chip' as pointed by Michael Ellerman. - Update the fix patch of correcting data source encodings to use new added field 'mem_hops' - Link to the patchset v1: https://lkml.org/lkml/2021/9/4/37 Kajol Jain (4): perf: Add comment about current state of PERF_MEM_LVL_* namespace and remove an extra line perf: Add mem_hops field in perf_mem_data_src structure tools/perf: Add mem_hops field in perf_mem_data_src structure powerpc/perf: Fix data source encodings for L2.1 and L3.1 accesses arch/powerpc/perf/isa207-common.c | 26 +++++++++++++++++++++----- arch/powerpc/perf/isa207-common.h | 2 ++ include/uapi/linux/perf_event.h | 19 ++++++++++++++++--- tools/include/uapi/linux/perf_event.h | 19 ++++++++++++++++--- tools/perf/util/mem-events.c | 20 ++++++++++++++++++-- 5 files changed, 73 insertions(+), 13 deletions(-) -- 2.26.2