Re: [PATCH v1 13/40] perf parse-events: Set attr.type to PMU type early

From: Liang, Kan
Date: Thu Apr 27 2023 - 16:02:21 EST




On 2023-04-26 3:00 a.m., Ian Rogers wrote:
> Set attr.type to PMU type early so that later terms can override the
> value. Setting the value in perf_pmu__config means that earlier steps,
> like config_term_pmu, can override the value.
>

Looks good to me.

Reviewed-by: Kan Liang <kan.liang@xxxxxxxxxxxxxxx>

Thanks,
Kan

> Signed-off-by: Ian Rogers <irogers@xxxxxxxxxx> ---
> tools/perf/util/parse-events.c | 2 +-
> tools/perf/util/pmu.c | 1 -
> 2 files changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/tools/perf/util/parse-events.c b/tools/perf/util/parse-events.c
> index d71019dcd614..4ba01577618e 100644
> --- a/tools/perf/util/parse-events.c
> +++ b/tools/perf/util/parse-events.c
> @@ -1492,9 +1492,9 @@ int parse_events_add_pmu(struct parse_events_state *parse_state,
> } else {
> memset(&attr, 0, sizeof(attr));
> }
> + attr.type = pmu->type;
>
> if (!head_config) {
> - attr.type = pmu->type;
> evsel = __add_event(list, &parse_state->idx, &attr,
> /*init_attr=*/true, /*name=*/NULL,
> /*metric_id=*/NULL, pmu,
> diff --git a/tools/perf/util/pmu.c b/tools/perf/util/pmu.c
> index ad209c88a124..cb33d869f1ed 100644
> --- a/tools/perf/util/pmu.c
> +++ b/tools/perf/util/pmu.c
> @@ -1398,7 +1398,6 @@ int perf_pmu__config(struct perf_pmu *pmu, struct perf_event_attr *attr,
> {
> bool zero = !!pmu->default_config;
>
> - attr->type = pmu->type;
> return perf_pmu__config_terms(pmu->name, &pmu->format, attr,
> head_terms, zero, err);
> }