[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <cover.1744906694.git.sandipan.das@amd.com>
Date: Fri, 18 Apr 2025 09:12:58 +0530
From: Sandipan Das <sandipan.das@....com>
To: <linux-perf-users@...r.kernel.org>, <linux-kernel@...r.kernel.org>
CC: <peterz@...radead.org>, <mingo@...hat.com>, <acme@...nel.org>,
<namhyung@...nel.org>, <mark.rutland@....com>,
<alexander.shishkin@...ux.intel.com>, <jolsa@...nel.org>,
<irogers@...gle.com>, <adrian.hunter@...el.com>, <kan.liang@...ux.intel.com>,
<tglx@...utronix.de>, <bp@...en8.de>, <dave.hansen@...ux.intel.com>,
<x86@...nel.org>, <hpa@...or.com>, <eranian@...gle.com>,
<songliubraving@...a.com>, <ravi.bangoria@....com>, <ananth.narayan@....com>,
<sandipan.das@....com>
Subject: [PATCH v2 0/5] perf/x86/uncore: Overflow handling enhancements
Uncore counters on AMD processors either roll over or saturate on
overflow and the amd-uncore driver has no way of knowing if multiple
overflows have occurred between two successive pmu->read() requests for
an event. This makes the user-visible counter values inaccurate. Solve
this by periodically initiating pmu->read() in order to keep prev_count
up-to-date. The approach follows Intel's precedent in handling uncore
counters.
Previous versions can be found at:
v1: https://lore.kernel.org/all/cover.1744184837.git.sandipan.das@amd.com/
Changes in v2:
- Add a Fixes tag for the first patch.
- Change the hrtimer mode for both the Intel and the AMD uncore drivers
based on Peter's suggestion.
- Fix an issue in the UMC workaround where prev_count is not zeroed out
after a counter is reset.
Sandipan Das (5):
perf/x86/amd/uncore: Remove unused member from amd_uncore_ctx
perf/x86/intel/uncore: Use HRTIMER_MODE_HARD for detecting overflows
perf/x86/amd/uncore: Use hrtimer for handling overflows
perf/x86/amd/uncore: Add parameter to configure hrtimer
perf/x86/amd/uncore: Prevent UMC counters from saturating
arch/x86/events/amd/uncore.c | 103 ++++++++++++++++++++++++++++++++-
arch/x86/events/intel/uncore.c | 12 +---
2 files changed, 103 insertions(+), 12 deletions(-)
--
2.43.0
Powered by blists - more mailing lists