summaryrefslogtreecommitdiffstats
path: root/drivers/perf/arm_pmu.c
diff options
context:
space:
mode:
authorSuzuki K Poulose <suzuki.poulose@arm.com>2018-07-10 09:58:03 +0100
committerWill Deacon <will.deacon@arm.com>2018-07-10 18:19:02 +0100
commit3cce50dfec4a5b0414c974190940f47dd32c6dee (patch)
treea84eb85d9988285bdcc704b70e7ac861f9f12c22 /drivers/perf/arm_pmu.c
parent0c55d19c1659d3fc38dcecca8bdaf6eabda39a9d (diff)
downloadlinux-stable-3cce50dfec4a5b0414c974190940f47dd32c6dee.tar.gz
linux-stable-3cce50dfec4a5b0414c974190940f47dd32c6dee.tar.bz2
linux-stable-3cce50dfec4a5b0414c974190940f47dd32c6dee.zip
arm64: perf: Disable PMU while processing counter overflows
The arm64 PMU updates the event counters and reprograms the counters in the overflow IRQ handler without disabling the PMU. This could potentially cause skews in for group counters, where the overflowed counters may potentially loose some event counts, while they are reprogrammed. To prevent this, disable the PMU while we process the counter overflows and enable it right back when we are done. This patch also moves the PMU stop/start routines to avoid a forward declaration. Suggested-by: Mark Rutland <mark.rutland@arm.com> Cc: Will Deacon <will.deacon@arm.com> Acked-by: Mark Rutland <mark.rutland@arm.com> Signed-off-by: Suzuki K Poulose <suzuki.poulose@arm.com> Signed-off-by: Will Deacon <will.deacon@arm.com>
Diffstat (limited to 'drivers/perf/arm_pmu.c')
0 files changed, 0 insertions, 0 deletions