diff options
Diffstat (limited to 'tools/perf/util/parse-events-hybrid.c')
| -rw-r--r-- | tools/perf/util/parse-events-hybrid.c | 9 | 
1 files changed, 6 insertions, 3 deletions
diff --git a/tools/perf/util/parse-events-hybrid.c b/tools/perf/util/parse-events-hybrid.c index 9fc86971027b..284f8eabd3b9 100644 --- a/tools/perf/util/parse-events-hybrid.c +++ b/tools/perf/util/parse-events-hybrid.c @@ -63,10 +63,13 @@ static int create_event_hybrid(__u32 config_type, int *idx,  static int pmu_cmp(struct parse_events_state *parse_state,  		   struct perf_pmu *pmu)  { -	if (!parse_state->hybrid_pmu_name) -		return 0; +	if (parse_state->evlist && parse_state->evlist->hybrid_pmu_name) +		return strcmp(parse_state->evlist->hybrid_pmu_name, pmu->name); + +	if (parse_state->hybrid_pmu_name) +		return strcmp(parse_state->hybrid_pmu_name, pmu->name); -	return strcmp(parse_state->hybrid_pmu_name, pmu->name); +	return 0;  }  static int add_hw_hybrid(struct parse_events_state *parse_state,  |