OSDN Git Service

perf/mem: Introduce PERF_MEM_LVLNUM_{EXTN_MEM|IO}
authorRavi Bangoria <ravi.bangoria@amd.com>
Wed, 28 Sep 2022 09:57:51 +0000 (15:27 +0530)
committerPeter Zijlstra <peterz@infradead.org>
Thu, 29 Sep 2022 10:20:54 +0000 (12:20 +0200)
PERF_MEM_LVLNUM_EXTN_MEM which can be used to indicate accesses to
extension memory like CXL etc. PERF_MEM_LVL_IO can be used for IO
accesses but it can not distinguish between local and remote IO.
Introduce new field PERF_MEM_LVLNUM_IO which can be clubbed with
PERF_MEM_REMOTE_REMOTE to indicate Remote IO accesses.

Signed-off-by: Ravi Bangoria <ravi.bangoria@amd.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lkml.kernel.org/r/20220928095805.596-2-ravi.bangoria@amd.com
include/uapi/linux/perf_event.h

index e639c74..4ae3c24 100644 (file)
@@ -1336,7 +1336,9 @@ union perf_mem_data_src {
 #define PERF_MEM_LVLNUM_L2     0x02 /* L2 */
 #define PERF_MEM_LVLNUM_L3     0x03 /* L3 */
 #define PERF_MEM_LVLNUM_L4     0x04 /* L4 */
-/* 5-0xa available */
+/* 5-0x8 available */
+#define PERF_MEM_LVLNUM_EXTN_MEM 0x09 /* Extension memory */
+#define PERF_MEM_LVLNUM_IO     0x0a /* I/O */
 #define PERF_MEM_LVLNUM_ANY_CACHE 0x0b /* Any cache */
 #define PERF_MEM_LVLNUM_LFB    0x0c /* LFB */
 #define PERF_MEM_LVLNUM_RAM    0x0d /* RAM */