Re: [PATCH 06/16] perf s390-cpumsf: Implement ->evsel_is_auxtrace() callback

From: Thomas Richter
Date: Wed Apr 01 2020 - 10:10:25 EST


On 4/1/20 12:16 PM, Adrian Hunter wrote:
> Implement ->evsel_is_auxtrace() callback.
>
> Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
> Cc: Thomas Richter <tmricht@xxxxxxxxxxxxx>
> ---
> tools/perf/util/s390-cpumcf-kernel.h | 1 +
> tools/perf/util/s390-cpumsf.c | 9 +++++++++
> 2 files changed, 10 insertions(+)
>
> diff --git a/tools/perf/util/s390-cpumcf-kernel.h b/tools/perf/util/s390-cpumcf-kernel.h
> index d4356030b504..f55ca07f3ca1 100644
> --- a/tools/perf/util/s390-cpumcf-kernel.h
> +++ b/tools/perf/util/s390-cpumcf-kernel.h
> @@ -11,6 +11,7 @@
>
> #define S390_CPUMCF_DIAG_DEF 0xfeef /* Counter diagnostic entry ID */
> #define PERF_EVENT_CPUM_CF_DIAG 0xBC000 /* Event: Counter sets */
> +#define PERF_EVENT_CPUM_SF_DIAG 0xBD000 /* Event: Combined-sampling */
>
> struct cf_ctrset_entry { /* CPU-M CF counter set entry (8 byte) */
> unsigned int def:16; /* 0-15 Data Entry Format */
> diff --git a/tools/perf/util/s390-cpumsf.c b/tools/perf/util/s390-cpumsf.c
> index 6785cd87aa4d..d7779e48652f 100644
> --- a/tools/perf/util/s390-cpumsf.c
> +++ b/tools/perf/util/s390-cpumsf.c
> @@ -1047,6 +1047,14 @@ static void s390_cpumsf_free(struct perf_session *session)
> free(sf);
> }
>
> +static bool
> +s390_cpumsf_evsel_is_auxtrace(struct perf_session *session __maybe_unused,
> + struct evsel *evsel)
> +{
> + return evsel->core.attr.type == PERF_TYPE_RAW &&
> + evsel->core.attr.config == PERF_EVENT_CPUM_SF_DIAG;
> +}
> +
> static int s390_cpumsf_get_type(const char *cpuid)
> {
> int ret, family = 0;
> @@ -1142,6 +1150,7 @@ int s390_cpumsf_process_auxtrace_info(union perf_event *event,
> sf->auxtrace.flush_events = s390_cpumsf_flush;
> sf->auxtrace.free_events = s390_cpumsf_free_events;
> sf->auxtrace.free = s390_cpumsf_free;
> + sf->auxtrace.evsel_is_auxtrace = s390_cpumsf_evsel_is_auxtrace;
> session->auxtrace = &sf->auxtrace;
>
> if (dump_trace)
>

Acked-by: Thomas Richter <tmricht@xxxxxxxxxxxxx>

--
Thomas Richter, Dept 3252, IBM s390 Linux Development, Boeblingen, Germany
--
Vorsitzender des Aufsichtsrats: Matthias Hartmann
GeschÃftsfÃhrung: Dirk Wittkopp
Sitz der Gesellschaft: BÃblingen / Registergericht: Amtsgericht Stuttgart, HRB 243294