[PATCH v14 11/32] perf annotate: Don't pass evsel to add_sample

From: Ian Rogers

Date: Wed May 20 2026 - 15:24:03 EST


As struct perf_sample now directly contains its own resolved evsel pointer,
passing the evsel separately is redundant and clutters the interface.

Remove the redundant evsel parameter from annotate-specific handlers and
structures, ensuring the tool always directly accesses the evsel bound to the
sample. This simplifies the API signatures and eliminates the risk of passing
an inconsistent evsel.

Signed-off-by: Ian Rogers <irogers@xxxxxxxxxx>
Acked-by: Namhyung Kim <namhyung@xxxxxxxxxx>
---
tools/perf/builtin-annotate.c | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/tools/perf/builtin-annotate.c b/tools/perf/builtin-annotate.c
index 6f8be9ead43b..719b36d4eed5 100644
--- a/tools/perf/builtin-annotate.c
+++ b/tools/perf/builtin-annotate.c
@@ -232,11 +232,11 @@ static bool has_annotation(struct perf_annotate *ann)
return ui__has_annotation() || ann->use_stdio2;
}

-static int evsel__add_sample(struct evsel *evsel, struct perf_sample *sample,
- struct addr_location *al, struct perf_annotate *ann,
- struct machine *machine)
+static int add_sample(struct perf_sample *sample,
+ struct addr_location *al, struct perf_annotate *ann,
+ struct machine *machine)
{
- struct hists *hists = evsel__hists(evsel);
+ struct hists *hists = evsel__hists(sample->evsel);
struct hist_entry *he;
int ret;

@@ -298,7 +298,7 @@ static int process_sample_event(const struct perf_tool *tool,
goto out_put;

if (!al.filtered &&
- evsel__add_sample(sample->evsel, sample, &al, ann, machine)) {
+ add_sample(sample, &al, ann, machine)) {
pr_warning("problem incrementing symbol count, "
"skipping event\n");
ret = -1;
--
2.54.0.746.g67dd491aae-goog