From: Leo Yan <leo.yan@arm.com>
To: Ian Rogers <irogers@google.com>
Cc: Arnaldo Carvalho de Melo <acme@kernel.org>,
Namhyung Kim <namhyung@kernel.org>,
Adrian Hunter <adrian.hunter@intel.com>,
James Clark <james.clark@linaro.org>,
Suzuki K Poulose <suzuki.poulose@arm.com>,
Mike Leach <mike.leach@linaro.org>,
John Garry <john.g.garry@oracle.com>,
Will Deacon <will@kernel.org>, Jiri Olsa <jolsa@kernel.org>,
Mark Rutland <mark.rutland@arm.com>,
coresight@lists.linaro.org, linux-arm-kernel@lists.infradead.org,
linux-perf-users@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v1 1/6] perf pmu: Directly use evsel's PMU pointer
Date: Mon, 22 Jul 2024 22:11:33 +0100 [thread overview]
Message-ID: <e6973788-625c-4be3-8bbe-3d8fcb1256c9@arm.com> (raw)
In-Reply-To: <CAP-5=fXr62AWU_g=Lymf=8wO-9FF-eEEsoBEYHdqxxdD0qgbnQ@mail.gmail.com>
On 7/22/2024 5:16 PM, Ian Rogers wrote:
> On Sun, Jul 21, 2024 at 1:21 PM Leo Yan <leo.yan@arm.com> wrote:
>>
>> Rather than iterating the whole PMU list for finding the associated PMU
>> device for an evsel, this commit optimizes to directly use evsel's 'pmu'
>> pointer for accessing PMU device.
>
> The code doesn't do that:
> ```
> struct perf_pmu *evsel__find_pmu(const struct evsel *evsel)
> {
> struct perf_pmu *pmu = evsel->pmu;
>
> if (!pmu) {
> pmu = perf_pmus__find_by_type(evsel->core.attr.type);
> ((struct evsel *)evsel)->pmu = pmu;
> }
> return pmu;
> }
> ```
> That is, if the evsel->pmu is not NULL then just return it, otherwise
> find the pmu using the type from the attribute. Any linear such should
> happen at most once unless the pmu is NULL from event parsing or
> perf_pmus__find_by_type.
So evsel__find_pmu() is good enough.
> The PMU may be NULL for legacy events and if
> sysfs isn't mounted. If you are encountering that then maybe we need a
> flag to say don't find the PMU for this evsel as it is known NULL.
I don't see a case of the PMU pointer is NULL. So don't need this flag.
My bad for misreading the code :\ Thanks a lot for pointing out.
Leo
next prev parent reply other threads:[~2024-07-22 21:12 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-07-21 20:21 [PATCH v1 0/6] perf auxtrace: Support multiple AUX events Leo Yan
2024-07-21 20:21 ` [PATCH v1 1/6] perf pmu: Directly use evsel's PMU pointer Leo Yan
2024-07-22 10:40 ` Adrian Hunter
2024-07-22 14:34 ` Leo Yan
2024-07-22 16:16 ` Ian Rogers
2024-07-22 21:11 ` Leo Yan [this message]
2024-07-21 20:21 ` [PATCH v1 2/6] perf auxtrace arm: Set the 'auxtrace' flag for AUX events Leo Yan
2024-07-22 10:49 ` Adrian Hunter
2024-07-22 14:36 ` Leo Yan
2024-07-21 20:21 ` [PATCH v1 3/6] perf auxtrace s390: " Leo Yan
2024-07-22 10:54 ` Adrian Hunter
2024-07-22 14:48 ` Leo Yan
2024-07-21 20:21 ` [PATCH v1 4/6] perf auxtrace: Iterate all AUX events when finish reading Leo Yan
2024-07-22 11:13 ` Adrian Hunter
2024-07-22 15:09 ` Leo Yan
2024-07-22 15:59 ` Adrian Hunter
2024-07-22 20:52 ` Leo Yan
2024-08-01 1:38 ` Ian Rogers
2024-08-01 15:04 ` Arnaldo Carvalho de Melo
2024-08-03 15:51 ` Leo Yan
2024-07-21 20:21 ` [PATCH v1 5/6] perf arm-spe: Extract evsel setting up Leo Yan
2024-07-21 20:21 ` [PATCH v1 6/6] perf arm-spe: Support multiple Arm SPE events Leo Yan
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=e6973788-625c-4be3-8bbe-3d8fcb1256c9@arm.com \
--to=leo.yan@arm.com \
--cc=acme@kernel.org \
--cc=adrian.hunter@intel.com \
--cc=coresight@lists.linaro.org \
--cc=irogers@google.com \
--cc=james.clark@linaro.org \
--cc=john.g.garry@oracle.com \
--cc=jolsa@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-perf-users@vger.kernel.org \
--cc=mark.rutland@arm.com \
--cc=mike.leach@linaro.org \
--cc=namhyung@kernel.org \
--cc=suzuki.poulose@arm.com \
--cc=will@kernel.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).