|
@@ -348,8 +348,9 @@ validate_event(struct cpu_hw_events *cpuc,
|
|
struct perf_event *event)
|
|
struct perf_event *event)
|
|
{
|
|
{
|
|
struct hw_perf_event fake_event = event->hw;
|
|
struct hw_perf_event fake_event = event->hw;
|
|
|
|
+ struct pmu *leader_pmu = event->group_leader->pmu;
|
|
|
|
|
|
- if (event->pmu != &pmu || event->state <= PERF_EVENT_STATE_OFF)
|
|
|
|
|
|
+ if (event->pmu != leader_pmu || event->state <= PERF_EVENT_STATE_OFF)
|
|
return 1;
|
|
return 1;
|
|
|
|
|
|
return armpmu->get_event_idx(cpuc, &fake_event) >= 0;
|
|
return armpmu->get_event_idx(cpuc, &fake_event) >= 0;
|