On Tue, May 27, 2025 at 11:06:59AM -0700, Ian Rogers wrote:
> The buffer returned by dso__demangle_sym may be NULL, don't segv in
> strcmp if this happens. Currently this happens for NO_LIBELF=1 builds.
>
> Signed-off-by: Ian Rogers <irogers@google.com>
> ---
> tools/perf/tests/demangle-java-test.c | 5 +++++
> 1 file changed, 5 insertions(+)
Thanks, applied to perf-tools-next,
- Arnaldo
> diff --git a/tools/perf/tests/demangle-java-test.c b/tools/perf/tests/demangle-java-test.c
> index ebaf60cdfa99..0fb3e5a4a0ed 100644
> --- a/tools/perf/tests/demangle-java-test.c
> +++ b/tools/perf/tests/demangle-java-test.c
> @@ -30,6 +30,11 @@ static int test__demangle_java(struct test_suite *test __maybe_unused, int subte
>
> for (i = 0; i < ARRAY_SIZE(test_cases); i++) {
> buf = dso__demangle_sym(/*dso=*/NULL, /*kmodule=*/0, test_cases[i].mangled);
> + if (!buf) {
> + pr_debug("FAILED to demangle: \"%s\"\n \"%s\"\n", test_cases[i].mangled,
> + test_cases[i].demangled);
> + continue;
> + }
> if (strcmp(buf, test_cases[i].demangled)) {
> pr_debug("FAILED: %s: %s != %s\n", test_cases[i].mangled,
> buf, test_cases[i].demangled);
> --
> 2.49.0.1204.g71687c7c1d-goog