Re: [PATCH 05/16] perf cs-etm: Implement ->evsel_is_auxtrace() callback
From: Mathieu Poirier
Date: Wed Apr 01 2020 - 13:11:57 EST
On Wed, Apr 01, 2020 at 01:16:02PM +0300, Adrian Hunter wrote:
> Implement ->evsel_is_auxtrace() callback.
>
> Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
> Cc: Mathieu Poirier <mathieu.poirier@xxxxxxxxxx>
> ---
> tools/perf/util/cs-etm.c | 11 +++++++++++
> 1 file changed, 11 insertions(+)
>
> diff --git a/tools/perf/util/cs-etm.c b/tools/perf/util/cs-etm.c
> index 62d2f9b9ce1b..3c802fde4954 100644
> --- a/tools/perf/util/cs-etm.c
> +++ b/tools/perf/util/cs-etm.c
> @@ -631,6 +631,16 @@ static void cs_etm__free(struct perf_session *session)
> zfree(&aux);
> }
>
> +static bool cs_etm__evsel_is_auxtrace(struct perf_session *session,
> + struct evsel *evsel)
> +{
> + struct cs_etm_auxtrace *aux = container_of(session->auxtrace,
> + struct cs_etm_auxtrace,
> + auxtrace);
> +
> + return evsel->core.attr.type == aux->pmu_type;
> +}
> +
> static u8 cs_etm__cpu_mode(struct cs_etm_queue *etmq, u64 address)
> {
> struct machine *machine;
> @@ -2618,6 +2628,7 @@ int cs_etm__process_auxtrace_info(union perf_event *event,
> etm->auxtrace.flush_events = cs_etm__flush_events;
> etm->auxtrace.free_events = cs_etm__free_events;
> etm->auxtrace.free = cs_etm__free;
> + etm->auxtrace.evsel_is_auxtrace = cs_etm__evsel_is_auxtrace;
> session->auxtrace = &etm->auxtrace;
Reviewed-by: Mathieu Poirier <mathieu.poirier@xxxxxxxxxx>
>
> etm->unknown_thread = thread__new(999999999, 999999999);
> --
> 2.17.1
>