diff options
| author | Dave Jiang <dave.jiang@intel.com> | 2026-08-05 08:59:02 -0700 |
|---|---|---|
| committer | Will Deacon <will@kernel.org> | 2026-10-04 17:02:05 +0000 |
| commit | 7406d6cf76b1dad53084f3988dc65ab967209344 (patch) | |
| tree | 96f7db22ea2e3310bc40c7aafb6de931b35d9ea7 /tools/lib/python | |
| parent | b22dcc11429866e07dc54299255e8ca13c26d38a (diff) | |
perf/cxl: Clear stale event fields before reprogramming a counter
cxl_pmu_event_start() ORs the event group id, event mask, edge and invert
selections into a configurable counter's config register without clearing
them first, and cxl_pmu_event_stop() leaves them set. Reuse the counter for
another event and the new selection lands on top of the old one, so the
counter counts the wrong events with stale edge and invert behaviour.
Use FIELD_MODIFY() so each field is replaced rather than accumulated.
Fixes: 5d7107c72796 ("perf: CXL Performance Monitoring Unit driver")
Reported-by: sashiko-bot@kernel.org
Closes: https://sashiko.dev/#/patchset/20260715191454.459673-1-dave@stgolabs.net?part=1
Assisted-by: Claude:claude-opus-4-8
Signed-off-by: Dave Jiang <dave.jiang@intel.com>
Reviewed-by: Jonathan Cameron <jonathan.cameron@oss.qualcomm.com>
Link: https://sashiko.dev/#/patchset/20260715191454.459673-1-dave@stgolabs.net?part=1
Signed-off-by: Will Deacon <will@kernel.org>
Diffstat (limited to 'tools/lib/python')
0 files changed, 0 insertions, 0 deletions
