Re: [PATCH V9 06/13] perf tools: Enable evsel__is_aux_event() to work for S390_CPUMSF

From: Adrian Hunter
Date: Tue Jul 23 2024 - 05:10:11 EST


On 23/07/24 11:26, Leo Yan wrote:
> On 7/15/2024 5:07 PM, Adrian Hunter wrote:
>>
>> evsel__is_aux_event() identifies AUX area tracing selected events.
>>
>> S390_CPUMSF uses a raw event type (PERF_TYPE_RAW - refer
>> s390_cpumsf_evsel_is_auxtrace()) not a PMU type value that could be checked
>> in evsel__is_aux_event(). However it sets needs_auxtrace_mmap (refer
>> auxtrace_record__init()), so check that first.
>>
>> Currently, the features that use evsel__is_aux_event() are used only by
>> Intel PT, but that may change in the future.
>>
>> Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
>> Acked-by: Ian Rogers <irogers@xxxxxxxxxx>
>> Reviewed-by: Andi Kleen <ak@xxxxxxxxxxxxxxx>
>
> Reviewed-by: Leo Yan <leo.yan@xxxxxxx>

Namhyung, could we get patches 5 and 6 from this series
applied? They are independent and Leo's new patch set is
dependent on patch 5.

>
>> ---
>> tools/perf/util/pmu.c | 6 +++++-
>> 1 file changed, 5 insertions(+), 1 deletion(-)
>>
>> diff --git a/tools/perf/util/pmu.c b/tools/perf/util/pmu.c
>> index 986166bc7c78..0b38c51bd6eb 100644
>> --- a/tools/perf/util/pmu.c
>> +++ b/tools/perf/util/pmu.c
>> @@ -1199,8 +1199,12 @@ void perf_pmu__warn_invalid_formats(struct perf_pmu *pmu)
>>
>> bool evsel__is_aux_event(const struct evsel *evsel)
>> {
>> - struct perf_pmu *pmu = evsel__find_pmu(evsel);
>> + struct perf_pmu *pmu;
>>
>> + if (evsel->needs_auxtrace_mmap)
>> + return true;
>> +
>> + pmu = evsel__find_pmu(evsel);
>> return pmu && pmu->auxtrace;
>> }
>>
>> --
>> 2.34.1
>>
>>