Skip to content

Commit 96b59d0

Browse files
robherringopsiff
authored andcommitted
perf: arm_pmuv3: Call kvm_vcpu_pmu_resync_el0() before enabling counters
[ Upstream commit 04bd15c ] Counting events related to setup of the PMU is not desired, but kvm_vcpu_pmu_resync_el0() is called just after the PMU counters have been enabled. Move the call to before enabling the counters. Signed-off-by: Rob Herring (Arm) <robh@kernel.org> Reviewed-by: Anshuman Khandual <anshuman.khandual@arm.com> Tested-by: James Clark <james.clark@linaro.org> Link: https://lore.kernel.org/r/20250218-arm-brbe-v19-v20-1-4e9922fc2e8e@kernel.org Signed-off-by: Will Deacon <will@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org> (cherry picked from commit 1ae981c91dc26b20d7dd539cad88aaeab0868f32)
1 parent 3c46542 commit 96b59d0

1 file changed

Lines changed: 2 additions & 2 deletions

File tree

drivers/perf/arm_pmuv3.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -751,10 +751,10 @@ static void armv8pmu_start(struct arm_pmu *cpu_pmu)
751751
else
752752
armv8pmu_disable_user_access();
753753

754+
kvm_vcpu_pmu_resync_el0();
755+
754756
/* Enable all counters */
755757
armv8pmu_pmcr_write(armv8pmu_pmcr_read() | ARMV8_PMU_PMCR_E);
756-
757-
kvm_vcpu_pmu_resync_el0();
758758
}
759759

760760
static void armv8pmu_stop(struct arm_pmu *cpu_pmu)

0 commit comments

Comments
 (0)