Re: [PATCH 1/4] perf: Add comment about current state of PERF_MEM_LVL_* namespace and remove an extra line
From: kajoljain <hidden>
Date: 2021-10-05 09:49:41
Also in:
linuxppc-dev, lkml
Hi, Sorry I missed to update correct version details. Link to the previous patch-set, where discussion related to addition of new data source encoding field 'mem_hops' happened: https://lkml.org/lkml/2021/9/4/37 Changelog: - 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'. Thanks, Kajol Jain On 10/5/21 2:48 PM, Kajol Jain wrote:
quoted hunk ↗ jump to hunk
Add a comment about PERF_MEM_LVL_* namespace being depricated to some extent in favour of added PERF_MEM_{LVLNUM_,REMOTE_,SNOOPX_} fields. Remove an extra line present in perf_mem__lvl_scnprintf function. Signed-off-by: Kajol Jain <redacted> --- include/uapi/linux/perf_event.h | 8 +++++++- tools/include/uapi/linux/perf_event.h | 8 +++++++- tools/perf/util/mem-events.c | 1 - 3 files changed, 14 insertions(+), 3 deletions(-)diff --git a/include/uapi/linux/perf_event.h b/include/uapi/linux/perf_event.h index f92880a15645..e1701e9c7858 100644 --- a/include/uapi/linux/perf_event.h +++ b/include/uapi/linux/perf_event.h@@ -1241,7 +1241,13 @@ union perf_mem_data_src { #define PERF_MEM_OP_EXEC 0x10 /* code (execution) */ #define PERF_MEM_OP_SHIFT 0 -/* memory hierarchy (memory level, hit or miss) */ +/* + * PERF_MEM_LVL_* namespace being depricated to some extent in the + * favour of newer composite PERF_MEM_{LVLNUM_,REMOTE_,SNOOPX_} fields. + * Supporting this namespace inorder to not break defined ABIs. + * + * memory hierarchy (memory level, hit or miss) + */ #define PERF_MEM_LVL_NA 0x01 /* not available */ #define PERF_MEM_LVL_HIT 0x02 /* hit level */ #define PERF_MEM_LVL_MISS 0x04 /* miss level */diff --git a/tools/include/uapi/linux/perf_event.h b/tools/include/uapi/linux/perf_event.h index f92880a15645..e1701e9c7858 100644 --- a/tools/include/uapi/linux/perf_event.h +++ b/tools/include/uapi/linux/perf_event.h@@ -1241,7 +1241,13 @@ union perf_mem_data_src { #define PERF_MEM_OP_EXEC 0x10 /* code (execution) */ #define PERF_MEM_OP_SHIFT 0 -/* memory hierarchy (memory level, hit or miss) */ +/* + * PERF_MEM_LVL_* namespace being depricated to some extent in the + * favour of newer composite PERF_MEM_{LVLNUM_,REMOTE_,SNOOPX_} fields. + * Supporting this namespace inorder to not break defined ABIs. + * + * memory hierarchy (memory level, hit or miss) + */ #define PERF_MEM_LVL_NA 0x01 /* not available */ #define PERF_MEM_LVL_HIT 0x02 /* hit level */ #define PERF_MEM_LVL_MISS 0x04 /* miss level */diff --git a/tools/perf/util/mem-events.c b/tools/perf/util/mem-events.c index f0e75df72b80..ff7289e28192 100644 --- a/tools/perf/util/mem-events.c +++ b/tools/perf/util/mem-events.c@@ -320,7 +320,6 @@ int perf_mem__lvl_scnprintf(char *out, size_t sz, struct mem_info *mem_info) /* already taken care of */ m &= ~(PERF_MEM_LVL_HIT|PERF_MEM_LVL_MISS); - if (mem_info && mem_info->data_src.mem_remote) { strcat(out, "Remote "); l += 7;