From: Namhyung Kim <namhyung@kernel.org>
To: tanze <tanze@kylinos.cn>
Cc: james.clark@linaro.org, leo.yan@linux.dev, irogers@google.com,
john.g.garry@oracle.com, linux-arm-kernel@lists.infradead.org,
linux-perf-users@vger.kernel.org, linux-kernel@vger.kernel.org,
graham.woodward@arm.com, mike.leach@linaro.org,
Adrian Hunter <adrian.hunter@intel.com>,
Athira Rajeev <atrajeev@linux.ibm.com>
Subject: Re: [PATCH v2] perf arm_spe: Add a macro definition to handle offset value
Date: Sun, 19 Oct 2025 12:05:17 +0900 [thread overview]
Message-ID: <aPRVbfadB0mCGP4t@google.com> (raw)
In-Reply-To: <20251017021540.45930-1-tanze@kylinos.cn>
Hello,
On Fri, Oct 17, 2025 at 10:15:40AM +0800, tanze wrote:
> Add a macro definition SPE_SYNTH_ID_OFFSET to handle the offset value
> and improve readability.
>
> Signed-off-by: tanze <tanze@kylinos.cn>
I'm adding relevant folks to CC.
Thanks,
Namhyung
> ---
> Hi, Leo Yan
>
> Thank you for your guidance and suggestions. I have made revisions according to your requirements.
> Do you have any further suggestions?
> ---
> Changes in v2:
> - Migrate the macro definitions to the synthetic-events.h file
> - Add modifications to other source files that use the offset value
> ---
> tools/perf/util/arm-spe.c | 2 +-
> tools/perf/util/cs-etm.c | 2 +-
> tools/perf/util/intel-bts.c | 2 +-
> tools/perf/util/intel-pt.c | 2 +-
> tools/perf/util/powerpc-vpadtl.c | 3 ++-
> tools/perf/util/synthetic-events.h | 2 ++
> 6 files changed, 8 insertions(+), 5 deletions(-)
>
> diff --git a/tools/perf/util/arm-spe.c b/tools/perf/util/arm-spe.c
> index 71be979f5077..b082cb1666a6 100644
> --- a/tools/perf/util/arm-spe.c
> +++ b/tools/perf/util/arm-spe.c
> @@ -1732,7 +1732,7 @@ arm_spe_synth_events(struct arm_spe *spe, struct perf_session *session)
> attr.sample_period = spe->synth_opts.period;
>
> /* create new id val to be a fixed offset from evsel id */
> - id = evsel->core.id[0] + 1000000000;
> + id = evsel->core.id[0] + PERF_SYNTH_EVENT_ID_OFFSET;
>
> if (!id)
> id = 1;
> diff --git a/tools/perf/util/cs-etm.c b/tools/perf/util/cs-etm.c
> index 30f4bb3e7fa3..46902f7b69f1 100644
> --- a/tools/perf/util/cs-etm.c
> +++ b/tools/perf/util/cs-etm.c
> @@ -1726,7 +1726,7 @@ static int cs_etm__synth_events(struct cs_etm_auxtrace *etm,
> attr.read_format = evsel->core.attr.read_format;
>
> /* create new id val to be a fixed offset from evsel id */
> - id = evsel->core.id[0] + 1000000000;
> + id = evsel->core.id[0] + PERF_SYNTH_EVENT_ID_OFFSET;
>
> if (!id)
> id = 1;
> diff --git a/tools/perf/util/intel-bts.c b/tools/perf/util/intel-bts.c
> index 3625c6224750..98b928eca724 100644
> --- a/tools/perf/util/intel-bts.c
> +++ b/tools/perf/util/intel-bts.c
> @@ -777,7 +777,7 @@ static int intel_bts_synth_events(struct intel_bts *bts,
> attr.sample_id_all = evsel->core.attr.sample_id_all;
> attr.read_format = evsel->core.attr.read_format;
>
> - id = evsel->core.id[0] + 1000000000;
> + id = evsel->core.id[0] + PERF_SYNTH_EVENT_ID_OFFSET;
> if (!id)
> id = 1;
>
> diff --git a/tools/perf/util/intel-pt.c b/tools/perf/util/intel-pt.c
> index 9b1011fe4826..4fb9600a7369 100644
> --- a/tools/perf/util/intel-pt.c
> +++ b/tools/perf/util/intel-pt.c
> @@ -3987,7 +3987,7 @@ static int intel_pt_synth_events(struct intel_pt *pt,
> attr.sample_id_all = evsel->core.attr.sample_id_all;
> attr.read_format = evsel->core.attr.read_format;
>
> - id = evsel->core.id[0] + 1000000000;
> + id = evsel->core.id[0] + PERF_SYNTH_EVENT_ID_OFFSET;
> if (!id)
> id = 1;
>
> diff --git a/tools/perf/util/powerpc-vpadtl.c b/tools/perf/util/powerpc-vpadtl.c
> index 39a3fb3f1330..5ce5d2bf4c6c 100644
> --- a/tools/perf/util/powerpc-vpadtl.c
> +++ b/tools/perf/util/powerpc-vpadtl.c
> @@ -15,6 +15,7 @@
> #include "powerpc-vpadtl.h"
> #include "sample.h"
> #include "tool.h"
> +#include "util/synthetic-events.h"
>
> /*
> * Structure to save the auxtrace queue
> @@ -656,7 +657,7 @@ powerpc_vpadtl_synth_events(struct powerpc_vpadtl *vpa, struct perf_session *ses
> attr.config = PERF_SYNTH_POWERPC_VPA_DTL;
>
> /* create new id val to be a fixed offset from evsel id */
> - id = evsel->core.id[0] + 1000000000;
> + id = evsel->core.id[0] + PERF_SYNTH_EVENT_ID_OFFSET;
> if (!id)
> id = 1;
>
> diff --git a/tools/perf/util/synthetic-events.h b/tools/perf/util/synthetic-events.h
> index ee29615d68e5..c8a1fe7a3fa4 100644
> --- a/tools/perf/util/synthetic-events.h
> +++ b/tools/perf/util/synthetic-events.h
> @@ -39,6 +39,8 @@ enum perf_record_synth {
> };
> #define PERF_SYNTH_ALL (PERF_SYNTH_MAX - 1)
>
> +#define PERF_SYNTH_EVENT_ID_OFFSET (1000000000ULL)
> +
> int parse_synth_opt(char *str);
>
> typedef int (*perf_event__handler_t)(const struct perf_tool *tool, union perf_event *event,
> --
> 2.25.1
>
next prev parent reply other threads:[~2025-10-19 3:05 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-10-16 8:30 [PATCH v1] perf arm_spe: Add a macro definition to handle offset value tanze
2025-10-16 9:09 ` Leo Yan
[not found] ` <1760620322251982.15.seg@mailgw.kylinos.cn>
2025-10-17 1:07 ` tanze
2025-10-17 2:15 ` [PATCH v2] " tanze
2025-10-17 10:09 ` Leo Yan
2025-10-19 3:05 ` Namhyung Kim [this message]
2025-10-24 6:27 ` Adrian Hunter
2025-10-24 8:10 ` 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=aPRVbfadB0mCGP4t@google.com \
--to=namhyung@kernel.org \
--cc=adrian.hunter@intel.com \
--cc=atrajeev@linux.ibm.com \
--cc=graham.woodward@arm.com \
--cc=irogers@google.com \
--cc=james.clark@linaro.org \
--cc=john.g.garry@oracle.com \
--cc=leo.yan@linux.dev \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-perf-users@vger.kernel.org \
--cc=mike.leach@linaro.org \
--cc=tanze@kylinos.cn \
/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.