Commit 36b4cd99 authored by Adrian Hunter's avatar Adrian Hunter Committed by Namhyung Kim
Browse files

perf intel-pt: Fix aux_watermark calculation for 64-bit size



aux_watermark is a u32. For a 64-bit size, cap the aux_watermark
calculation at UINT_MAX instead of truncating it to 32-bits.

Fixes: 874fc35c ("perf intel-pt: Use aux_watermark")
Signed-off-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
Link: https://lore.kernel.org/r/20240625104532.11990-2-adrian.hunter@intel.com


Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
parent 74ad3cb0
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -758,7 +758,8 @@ static int intel_pt_recording_options(struct auxtrace_record *itr,
	}

	if (!opts->auxtrace_snapshot_mode && !opts->auxtrace_sample_mode) {
		u32 aux_watermark = opts->auxtrace_mmap_pages * page_size / 4;
		size_t aw = opts->auxtrace_mmap_pages * (size_t)page_size / 4;
		u32 aux_watermark = aw > UINT_MAX ? UINT_MAX : aw;

		intel_pt_evsel->core.attr.aux_watermark = aux_watermark;
	}