Commit 367377f4 authored by Namhyung Kim's avatar Namhyung Kim
Browse files

perf tools: Fix missing feature check for inherit + SAMPLE_READ



It should also have PERF_SAMPLE_TID to enable inherit and PERF_SAMPLE_READ
on recent kernels.  Not having _TID makes the feature check wrongly detect
the inherit and _READ support.

It was reported that the following command failed due to the error in
the missing feature check on Intel SPR machines.

  $ perf record -e '{cpu/mem-loads-aux/S,cpu/mem-loads,ldlat=3/PS}' -- ls
  Error:
  Failure to open event 'cpu/mem-loads,ldlat=3/PS' on PMU 'cpu' which will be removed.
  Invalid event (cpu/mem-loads,ldlat=3/PS) in per-thread mode, enable system wide with '-a'.

Reviewed-by: default avatarIan Rogers <irogers@google.com>
Fixes: 3b193a57 ("perf tools: Detect missing kernel features properly")
Reported-and-tested-by: default avatarChen, Zide <zide.chen@intel.com>
Closes: https://lore.kernel.org/lkml/20251022220802.1335131-1-zide.chen@intel.com/


Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
parent e279039c
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -2474,7 +2474,7 @@ static bool evsel__detect_missing_features(struct evsel *evsel, struct perf_cpu
	/* Please add new feature detection here. */

	attr.inherit = true;
	attr.sample_type = PERF_SAMPLE_READ;
	attr.sample_type = PERF_SAMPLE_READ | PERF_SAMPLE_TID;
	if (has_attr_feature(&attr, /*flags=*/0))
		goto found;
	perf_missing_features.inherit_sample_read = true;