From: Arnaldo Carvalho de Melo <acme@kernel.org>
To: Ian Rogers <irogers@google.com>
Cc: Peter Zijlstra <peterz@infradead.org>,
Ingo Molnar <mingo@redhat.com>,
Namhyung Kim <namhyung@kernel.org>,
Mark Rutland <mark.rutland@arm.com>,
Alexander Shishkin <alexander.shishkin@linux.intel.com>,
Jiri Olsa <jolsa@kernel.org>,
Adrian Hunter <adrian.hunter@intel.com>,
Kan Liang <kan.liang@linux.intel.com>,
John Garry <john.g.garry@oracle.com>,
Jing Zhang <renyu.zj@linux.alibaba.com>,
Xu Yang <xu.yang_2@nxp.com>, Sandipan Das <sandipan.das@amd.com>,
linux-perf-users@vger.kernel.org, linux-kernel@vger.kernel.org,
philip.li@intel.com, oliver.sang@intel.com,
Weilin Wang <weilin.wang@intel.com>
Subject: Re: [PATCH v3 1/2] perf jevents: Use name for special find value
Date: Wed, 31 Jul 2024 10:19:28 -0300 [thread overview]
Message-ID: <Zqo54HwtkDSA-IBb@x1> (raw)
In-Reply-To: <20240730191744.3097329-2-irogers@google.com>
On Tue, Jul 30, 2024 at 12:17:43PM -0700, Ian Rogers wrote:
> -1000 was used as a special value added in Commit 3d5045492ab2 ("perf
> pmu-events: Add pmu_events_table__find_event()") to show that 1 table
> lacked a PMU/event but that didn't terminate the search in other
> tables. Add a new constant PMU_EVENTS__NOT_FOUND for this value and
> use it.
Applied this one.
- Arnaldo
> Signed-off-by: Ian Rogers <irogers@google.com>
> Reviewed-by: John Garry <john.g.garry@oracle.com>
> ---
> tools/perf/pmu-events/jevents.py | 6 +++---
> tools/perf/pmu-events/pmu-events.h | 9 +++++++++
> 2 files changed, 12 insertions(+), 3 deletions(-)
>
> diff --git a/tools/perf/pmu-events/jevents.py b/tools/perf/pmu-events/jevents.py
> index ac9b7ca41856..731776e29f47 100755
> --- a/tools/perf/pmu-events/jevents.py
> +++ b/tools/perf/pmu-events/jevents.py
> @@ -906,7 +906,7 @@ static int pmu_events_table__find_event_pmu(const struct pmu_events_table *table
> do_call:
> return fn ? fn(&pe, table, data) : 0;
> }
> - return -1000;
> + return PMU_EVENTS__NOT_FOUND;
> }
>
> int pmu_events_table__for_each_event(const struct pmu_events_table *table,
> @@ -944,10 +944,10 @@ int pmu_events_table__find_event(const struct pmu_events_table *table,
> continue;
>
> ret = pmu_events_table__find_event_pmu(table, table_pmu, name, fn, data);
> - if (ret != -1000)
> + if (ret != PMU_EVENTS__NOT_FOUND)
> return ret;
> }
> - return -1000;
> + return PMU_EVENTS__NOT_FOUND;
> }
>
> size_t pmu_events_table__num_events(const struct pmu_events_table *table,
> diff --git a/tools/perf/pmu-events/pmu-events.h b/tools/perf/pmu-events/pmu-events.h
> index f5aa96f1685c..5435ad92180c 100644
> --- a/tools/perf/pmu-events/pmu-events.h
> +++ b/tools/perf/pmu-events/pmu-events.h
> @@ -70,6 +70,8 @@ struct pmu_metric {
> struct pmu_events_table;
> struct pmu_metrics_table;
>
> +#define PMU_EVENTS__NOT_FOUND -1000
> +
> typedef int (*pmu_event_iter_fn)(const struct pmu_event *pe,
> const struct pmu_events_table *table,
> void *data);
> @@ -82,6 +84,13 @@ int pmu_events_table__for_each_event(const struct pmu_events_table *table,
> struct perf_pmu *pmu,
> pmu_event_iter_fn fn,
> void *data);
> +/*
> + * Search for table and entry matching with pmu__name_match. Each matching event
> + * has fn called on it. 0 implies to success/continue the search while non-zero
> + * means to terminate. The special value PMU_EVENTS__NOT_FOUND is used to
> + * indicate no event was found in one of the tables which doesn't terminate the
> + * search of all tables.
> + */
> int pmu_events_table__find_event(const struct pmu_events_table *table,
> struct perf_pmu *pmu,
> const char *name,
> --
> 2.46.0.rc2.264.g509ed76dc8-goog
next prev parent reply other threads:[~2024-07-31 13:19 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-07-30 19:17 [PATCH v3 0/2] perf jevents: Autogenerate empty-pmu-events.c Ian Rogers
2024-07-30 19:17 ` [PATCH v3 1/2] perf jevents: Use name for special find value Ian Rogers
2024-07-31 13:19 ` Arnaldo Carvalho de Melo [this message]
2024-07-30 19:17 ` [PATCH v3 2/2] perf jevents: Autogenerate empty-pmu-events.c Ian Rogers
2024-07-31 13:18 ` Arnaldo Carvalho de Melo
2024-07-31 14:08 ` Ian Rogers
2024-07-31 15:33 ` Arnaldo Carvalho de Melo
2024-07-31 15:46 ` Arnaldo Carvalho de Melo
2024-07-31 15:58 ` Ian Rogers
2024-07-31 18:53 ` Arnaldo Carvalho de Melo
2024-07-31 20:20 ` Ian Rogers
2024-07-31 20:41 ` Arnaldo Carvalho de Melo
2024-08-01 1:35 ` Ian Rogers
2024-07-31 13:05 ` [PATCH v3 0/2] " Arnaldo Carvalho de Melo
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=Zqo54HwtkDSA-IBb@x1 \
--to=acme@kernel.org \
--cc=adrian.hunter@intel.com \
--cc=alexander.shishkin@linux.intel.com \
--cc=irogers@google.com \
--cc=john.g.garry@oracle.com \
--cc=jolsa@kernel.org \
--cc=kan.liang@linux.intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-perf-users@vger.kernel.org \
--cc=mark.rutland@arm.com \
--cc=mingo@redhat.com \
--cc=namhyung@kernel.org \
--cc=oliver.sang@intel.com \
--cc=peterz@infradead.org \
--cc=philip.li@intel.com \
--cc=renyu.zj@linux.alibaba.com \
--cc=sandipan.das@amd.com \
--cc=weilin.wang@intel.com \
--cc=xu.yang_2@nxp.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.