aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/kernel/perf_event.c
diff options
context:
space:
mode:
authorIngo Molnar <mingo@elte.hu>2010-09-15 04:27:31 -0400
committerIngo Molnar <mingo@elte.hu>2010-09-15 04:27:31 -0400
commit3aabae7d9dfaed60effe93662f02c19bafc18537 (patch)
treeaf94cdd69add07601d9f3f5988dfc1dc255e3886 /arch/arm/kernel/perf_event.c
parent79e406d7b00ab2b261ae32a59f266fd3b7af6f29 (diff)
parent57c072c7113f54f9512624d6c665db6184448782 (diff)
Merge branch 'tip/perf/core' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/core
Diffstat (limited to 'arch/arm/kernel/perf_event.c')
-rw-r--r--arch/arm/kernel/perf_event.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/arch/arm/kernel/perf_event.c b/arch/arm/kernel/perf_event.c
index 45d6a35217c1..ad19c276b10f 100644
--- a/arch/arm/kernel/perf_event.c
+++ b/arch/arm/kernel/perf_event.c
@@ -342,8 +342,8 @@ validate_event(struct cpu_hw_events *cpuc,
342{ 342{
343 struct hw_perf_event fake_event = event->hw; 343 struct hw_perf_event fake_event = event->hw;
344 344
345 if (event->pmu && event->pmu != &pmu) 345 if (event->pmu != &pmu || event->state <= PERF_EVENT_STATE_OFF)
346 return 0; 346 return 1;
347 347
348 return armpmu->get_event_idx(cpuc, &fake_event) >= 0; 348 return armpmu->get_event_idx(cpuc, &fake_event) >= 0;
349} 349}
@@ -1082,8 +1082,8 @@ armv6pmu_handle_irq(int irq_num,
1082 /* 1082 /*
1083 * Handle the pending perf events. 1083 * Handle the pending perf events.
1084 * 1084 *
1085 * Note: this call *must* be run with interrupts enabled. For 1085 * Note: this call *must* be run with interrupts disabled. For
1086 * platforms that can have the PMU interrupts raised as a PMI, this 1086 * platforms that can have the PMU interrupts raised as an NMI, this
1087 * will not work. 1087 * will not work.
1088 */ 1088 */
1089 perf_event_do_pending(); 1089 perf_event_do_pending();
@@ -2058,8 +2058,8 @@ static irqreturn_t armv7pmu_handle_irq(int irq_num, void *dev)
2058 /* 2058 /*
2059 * Handle the pending perf events. 2059 * Handle the pending perf events.
2060 * 2060 *
2061 * Note: this call *must* be run with interrupts enabled. For 2061 * Note: this call *must* be run with interrupts disabled. For
2062 * platforms that can have the PMU interrupts raised as a PMI, this 2062 * platforms that can have the PMU interrupts raised as an NMI, this
2063 * will not work. 2063 * will not work.
2064 */ 2064 */
2065 perf_event_do_pending(); 2065 perf_event_do_pending();