[PATCH v2 2/2] perf evsel: Don't configure framepointer callchains on s390

Ian Rogers
2026-03-12T06:16:36Z

Frame pointer callchains are not supported on s390. Ignore the option
and print a warning.

Signed-off-by: Ian Rogers <irogers@google.com>
---
v2: Only disable user callchains as AI is telling me native "kernel"
callchains are supported on s390.
---
tools/perf/util/evsel.c | 6 ++++++
1 file changed, 6 insertions(+)

diff --git a/tools/perf/util/evsel.c b/tools/perf/util/evsel.c
index bd14d9bbc91f..fa21b48cba86 100644
--- a/tools/perf/util/evsel.c
+++ b/tools/perf/util/evsel.c
@@ -1076,6 +1076,12 @@ static void __evsel__config_callchain(struct evsel *evsel, struct record_opts *o
attr->exclude_callchain_user = 1;
}

+ if (EM_HOST == EM_S390 && (evsel->core.attr.sample_type & PERF_SAMPLE_CALLCHAIN) &&
+ !evsel->core.attr.exclude_callchain_user) {
+ pr_warning("Excluding user callchains that are not supported on s390. Try '--call-graph dwarf'\n");
+ evsel->core.attr.exclude_callchain_user = 1;
+ }
+
if (param->defer && !attr->exclude_callchain_user)
attr->defer_callchain = 1;
}
--
2.53.0.851.ga537e3e6e9-goog