diff --git a/arch/x86/events/core.c b/arch/x86/events/core.c index 57d3fe1e8b044..ed8dcfb22b2b9 100644 --- a/arch/x86/events/core.c +++ b/arch/x86/events/core.c @@ -2291,7 +2291,6 @@ static int validate_group(struct perf_event *event) static int x86_pmu_event_init(struct perf_event *event) { - struct pmu *tmp; int err; switch (event->attr.type) { @@ -2306,20 +2305,10 @@ static int x86_pmu_event_init(struct perf_event *event) err = __x86_pmu_event_init(event); if (!err) { - /* - * we temporarily connect event to its pmu - * such that validate_group() can classify - * it as an x86 event using is_x86_event() - */ - tmp = event->pmu; - event->pmu = &pmu; - if (event->group_leader != event) err = validate_group(event); else err = validate_event(event); - - event->pmu = tmp; } if (err) { if (event->destroy)