ARM: perf: remove unnecessary armpmu->stop
authorMark Rutland <mark.rutland@arm.com>
Mon, 8 Aug 2011 13:56:02 +0000 (14:56 +0100)
committerWill Deacon <will.deacon@arm.com>
Wed, 31 Aug 2011 09:50:06 +0000 (10:50 +0100)
As armpmu_disable will call armpmu->stop when the last event has been
removed, this is pointless and simply adds to the noise when debugging.
Additionally, due to this call occurring in a preemptible context, this
is problematic for per-cpu locking of PMU registers (where we will
attempt to access per-cpu spinlock for use with raw_spin_lock_irqsave).

This patch removes the call to armpmu->stop.

Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Reviewed-by: Will Deacon <will.deacon@arm.com>
Reviewed-by: Jamie Iles <jamie@jamieiles.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
arch/arm/kernel/perf_event.c

index 9d6ac99de30bf0ac067578cfbdde00f635f6579b..5ce6c3332915cce9ad730d0e4f4a1f279208dff6 100644 (file)
@@ -396,7 +396,6 @@ armpmu_release_hardware(void)
                        free_irq(irq, NULL);
        }
 
-       armpmu->stop();
        release_pmu(ARM_PMU_DEVICE_CPU);
 }