aboutsummaryrefslogtreecommitdiff
path: root/kernel/events/core.c
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2011-10-31 14:08:10 +0100
committerArnd Bergmann <arnd@arndb.de>2011-10-31 14:08:10 +0100
commit08cab72f91c8b28ffabfd143119bccdd4a115ad7 (patch)
treeccd5583971caecd82bf2d1e62691bf6e0362d650 /kernel/events/core.c
parent86c1e5a74af11e4817ffa6d7748d9ac1353b5b53 (diff)
parentf37a53cc5d8a8fb199e41386d125d8c2ed9e54ef (diff)
Merge branch 'dt/gic' into next/dt
Conflicts: arch/arm/include/asm/localtimer.h arch/arm/mach-msm/board-msm8x60.c arch/arm/mach-omap2/board-generic.c
Diffstat (limited to 'kernel/events/core.c')
-rw-r--r--kernel/events/core.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/kernel/events/core.c b/kernel/events/core.c
index 0f857782d06..fbe38f2e8ed 100644
--- a/kernel/events/core.c
+++ b/kernel/events/core.c
@@ -5758,6 +5758,7 @@ struct pmu *perf_init_event(struct perf_event *event)
pmu = idr_find(&pmu_idr, event->attr.type);
rcu_read_unlock();
if (pmu) {
+ event->pmu = pmu;
ret = pmu->event_init(event);
if (ret)
pmu = ERR_PTR(ret);
@@ -5765,6 +5766,7 @@ struct pmu *perf_init_event(struct perf_event *event)
}
list_for_each_entry_rcu(pmu, &pmus, entry) {
+ event->pmu = pmu;
ret = pmu->event_init(event);
if (!ret)
goto unlock;
@@ -5891,8 +5893,6 @@ done:
return ERR_PTR(err);
}
- event->pmu = pmu;
-
if (!event->parent) {
if (event->attach_state & PERF_ATTACH_TASK)
jump_label_inc(&perf_sched_events);