diff options
Diffstat (limited to 'arch/arm/kernel/perf_event_v7.c')
-rw-r--r-- | arch/arm/kernel/perf_event_v7.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/arm/kernel/perf_event_v7.c b/arch/arm/kernel/perf_event_v7.c index 24e195a00af..7e38f1fa712 100644 --- a/arch/arm/kernel/perf_event_v7.c +++ b/arch/arm/kernel/perf_event_v7.c @@ -1117,6 +1117,9 @@ static void armv7pmu_save_regs(struct arm_pmu *pmu, if (!cpupmu->active) return; + if (!*cpupmu->cpu_hw_events.used_mask) + return; + if (!__v7_pmu_save_reg(cpupmu, PMCR) & ARMV7_PMNC_E) return; @@ -1148,6 +1151,9 @@ static void armv7pmu_restore_regs(struct arm_pmu *pmu, if (!cpupmu->active) return; + if (!*cpupmu->cpu_hw_events.used_mask) + return; + pmcr = __v7_pmu_read_logical(cpupmu, PMCR); if (!pmcr & ARMV7_PMNC_E) return; |