All of lore.kernel.org
 help / color / mirror / Atom feed
From: Arnaldo Carvalho de Melo <acme@kernel.org>
To: Namhyung Kim <namhyung@kernel.org>
Cc: Jiri Olsa <jolsa@kernel.org>, Ingo Molnar <mingo@kernel.org>,
	Peter Zijlstra <peterz@infradead.org>,
	LKML <linux-kernel@vger.kernel.org>,
	Ian Rogers <irogers@google.com>,
	Adrian Hunter <adrian.hunter@intel.com>,
	linux-perf-users@vger.kernel.org,
	Kan Liang <kan.liang@linux.intel.com>,
	Leo Yan <leo.yan@linaro.org>, Andi Kleen <ak@linux.intel.com>,
	Athira Rajeev <atrajeev@linux.vnet.ibm.com>,
	James Clark <james.clark@arm.com>,
	Xing Zhengjun <zhengjun.xing@linux.intel.com>
Subject: Re: [PATCH 01/19] perf tools: Save evsel->pmu in parse_events()
Date: Sat, 15 Oct 2022 09:55:55 -0300	[thread overview]
Message-ID: <Y0qt2/bAncQQGvrj@kernel.org> (raw)
In-Reply-To: <20221014061550.463644-2-namhyung@kernel.org>

Em Thu, Oct 13, 2022 at 11:15:32PM -0700, Namhyung Kim escreveu:
> Now evsel has a pmu pointer, let's save the info and use it like in
> evsel__find_pmu().

This one made 'perf test metricgroups' to fail, I removed it and that
test passes. Can you please double check?

I have all the other patches in my local perf/core branch and I'm
prepping up a pull req with those included to Linus, holler if you
disagree.

- Arnaldo
 
> Acked-by: Ian Rogers <irogers@google.com>
> Signed-off-by: Namhyung Kim <namhyung@kernel.org>
> ---
>  tools/perf/util/evsel.c        | 1 +
>  tools/perf/util/parse-events.c | 1 +
>  tools/perf/util/pmu.c          | 4 ++++
>  3 files changed, 6 insertions(+)
> 
> diff --git a/tools/perf/util/evsel.c b/tools/perf/util/evsel.c
> index 76605fde3507..196f8e4859d7 100644
> --- a/tools/perf/util/evsel.c
> +++ b/tools/perf/util/evsel.c
> @@ -467,6 +467,7 @@ struct evsel *evsel__clone(struct evsel *orig)
>  	evsel->collect_stat = orig->collect_stat;
>  	evsel->weak_group = orig->weak_group;
>  	evsel->use_config_name = orig->use_config_name;
> +	evsel->pmu = orig->pmu;
>  
>  	if (evsel__copy_config_terms(evsel, orig) < 0)
>  		goto out_err;
> diff --git a/tools/perf/util/parse-events.c b/tools/perf/util/parse-events.c
> index 437389dacf48..9e704841273d 100644
> --- a/tools/perf/util/parse-events.c
> +++ b/tools/perf/util/parse-events.c
> @@ -263,6 +263,7 @@ __add_event(struct list_head *list, int *idx,
>  	evsel->core.own_cpus = perf_cpu_map__get(cpus);
>  	evsel->core.requires_cpu = pmu ? pmu->is_uncore : false;
>  	evsel->auto_merge_stats = auto_merge_stats;
> +	evsel->pmu = pmu;
>  
>  	if (name)
>  		evsel->name = strdup(name);
> diff --git a/tools/perf/util/pmu.c b/tools/perf/util/pmu.c
> index 74a2cafb4e8d..15bf5943083a 100644
> --- a/tools/perf/util/pmu.c
> +++ b/tools/perf/util/pmu.c
> @@ -1048,11 +1048,15 @@ struct perf_pmu *evsel__find_pmu(struct evsel *evsel)
>  {
>  	struct perf_pmu *pmu = NULL;
>  
> +	if (evsel->pmu)
> +		return evsel->pmu;
> +
>  	while ((pmu = perf_pmu__scan(pmu)) != NULL) {
>  		if (pmu->type == evsel->core.attr.type)
>  			break;
>  	}
>  
> +	evsel->pmu = pmu;
>  	return pmu;
>  }
>  
> -- 
> 2.38.0.413.g74048e4d9e-goog

-- 

- Arnaldo

  reply	other threads:[~2022-10-15 12:56 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-10-14  6:15 [PATCHSET 00/19] perf stat: Cleanup counter aggregation (v2) Namhyung Kim
2022-10-14  6:15 ` [PATCH 01/19] perf tools: Save evsel->pmu in parse_events() Namhyung Kim
2022-10-15 12:55   ` Arnaldo Carvalho de Melo [this message]
2022-10-14  6:15 ` [PATCH 02/19] perf tools: Use pmu info in evsel__is_hybrid() Namhyung Kim
2022-10-14  6:15 ` [PATCH 03/19] perf stat: Use evsel__is_hybrid() more Namhyung Kim
2022-10-14  6:15 ` [PATCH 04/19] perf stat: Add aggr id for global mode Namhyung Kim
2022-10-14  6:15 ` [PATCH 05/19] perf stat: Add cpu aggr id for no aggregation mode Namhyung Kim
2022-10-14  6:15 ` [PATCH 06/19] perf stat: Add 'needs_sort' argument to cpu_aggr_map__new() Namhyung Kim
2022-10-14  6:15 ` [PATCH 07/19] perf stat: Add struct perf_stat_aggr to perf_stat_evsel Namhyung Kim
2022-10-14  6:15 ` [PATCH 08/19] perf stat: Allocate evsel->stats->aggr properly Namhyung Kim
2022-10-14  6:15 ` [PATCH 09/19] perf stat: Aggregate events using evsel->stats->aggr Namhyung Kim
2022-10-14  6:15 ` [PATCH 10/19] perf stat: Aggregate per-thread stats " Namhyung Kim
2022-10-14  6:15 ` [PATCH 11/19] perf stat: Allocate aggr counts for recorded data Namhyung Kim
2022-10-14  6:15 ` [PATCH 12/19] perf stat: Reset aggr counts for each interval Namhyung Kim
2022-10-14  6:15 ` [PATCH 13/19] perf stat: Split process_counters() Namhyung Kim
2022-10-14  6:15 ` [PATCH 14/19] perf stat: Add perf_stat_merge_counters() Namhyung Kim
2022-10-14  6:15 ` [PATCH 15/19] perf stat: Add perf_stat_process_percore() Namhyung Kim
2022-10-14  6:15 ` [PATCH 16/19] perf stat: Add perf_stat_process_shadow_stats() Namhyung Kim
2022-10-14  6:15 ` [PATCH 17/19] perf stat: Display event stats using aggr counts Namhyung Kim
2022-10-15 13:11   ` Arnaldo Carvalho de Melo
2022-10-14  6:15 ` [PATCH 18/19] perf stat: Display percore events properly Namhyung Kim
2022-10-14  6:15 ` [PATCH 19/19] perf stat: Remove unused perf_counts.aggr field Namhyung Kim
2022-10-16 13:32   ` Athira Rajeev
2022-10-17 23:31     ` Namhyung Kim
2022-10-18  4:50       ` Athira Rajeev
2022-10-14  6:56 ` [PATCHSET 00/19] perf stat: Cleanup counter aggregation (v2) Jiri Olsa
2022-10-14 18:10   ` Namhyung Kim
2022-10-14 18:16     ` [PATCH 20/19] perf stat: Factor out evsel__count_has_error() Namhyung Kim
2022-10-14 20:04       ` Arnaldo Carvalho de Melo
  -- strict thread matches above, loose matches on Subject: below --
2022-10-10  5:35 [RFC/PATCHSET 00/19] perf stat: Cleanup counter aggregation (v1) Namhyung Kim
2022-10-10  5:35 ` [PATCH 01/19] perf tools: Save evsel->pmu in parse_events() Namhyung Kim
2022-10-10 22:21   ` Ian Rogers

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=Y0qt2/bAncQQGvrj@kernel.org \
    --to=acme@kernel.org \
    --cc=adrian.hunter@intel.com \
    --cc=ak@linux.intel.com \
    --cc=atrajeev@linux.vnet.ibm.com \
    --cc=irogers@google.com \
    --cc=james.clark@arm.com \
    --cc=jolsa@kernel.org \
    --cc=kan.liang@linux.intel.com \
    --cc=leo.yan@linaro.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-perf-users@vger.kernel.org \
    --cc=mingo@kernel.org \
    --cc=namhyung@kernel.org \
    --cc=peterz@infradead.org \
    --cc=zhengjun.xing@linux.intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.