Hi!
From: Al Grant al.grant@foss.arm.com
[ Upstream commit 39c0a53b114d0317e5c4e76b631f41d133af5cb0 ]
perf_event.h has macros that define the field offsets in the data_src bitmask in perf records. The SNOOPX and REMOTE offsets were both 37.
These are distinct fields, and the bitfield layout in perf_mem_data_src confirms that SNOOPX should be at offset 38.
Committer notes:
This was extracted from a larger patch that also contained kernel changes.
Fixes: 52839e653b5629bd ("perf tools: Add support for printing new mem_info encodings")
+++ b/tools/include/uapi/linux/perf_event.h @@ -1079,7 +1079,7 @@ union perf_mem_data_src { #define PERF_MEM_SNOOPX_FWD 0x01 /* forward */ /* 1 free */ -#define PERF_MEM_SNOOPX_SHIFT 37 +#define PERF_MEM_SNOOPX_SHIFT 38
We still have:
./include/uapi/linux/perf_event.h:#define PERF_MEM_SNOOPX_SHIFT 37
(note tools/include vs. include).
Should those be in sync before merging this to stable?
Best regards, Pavel