fedora-modularity / libmodulemd

C Library for manipulating module metadata files
MIT License
31 stars 52 forks source link

CI: Set up debuginfod for Arch #597

Closed ppisar closed 2 years ago

ppisar commented 2 years ago

Valgrind tests for Arch failed with:

Run meson test -C ci_valgrind --suite ci_valgrind --print-errorlogs -t 10 --wrap=$GITHUB_WORKSPACE/contrib/valgrind/valgrind_wrapper.sh ninja: Entering directory `/__w/libmodulemd/libmodulemd/ci_valgrind' ninja: no work to do. 1/22 modulemd:ci+ci_valgrind+c+c_debug / buildconfig_debug FAIL 0.02s exit status 1

MESON_BUILD_ROOT=/w/libmodulemd/libmodulemd/ci_valgrind MESON_SOURCE_ROOT=/w/libmodulemd/libmodulemd MALLOCPERTURB=145 G_DEBUG=fatal-warnings,fatal-criticals LC_ALL=C TEST_DATA_PATH=/w/libmodulemd/libmodulemd/modulemd/tests/test_data /w/libmodulemd/libmodulemd/contrib/valgrind/valgrind_wrapper.sh /__w/libmodulemd/libmodulemd/ci_valgrind/modulemd/buildconfig ――――――――――――――――――――――――――――――――――――― ✀ ――――――――――――――――――――――――――――――――――――― stderr:

  • valgrind --error-exitcode=1 --errors-for-leak-kinds=definite --leak-check=full --show-leak-kinds=definite --suppressions=/usr/share/glib-2.0/valgrind/glib.supp --suppressions=/w/libmodulemd/libmodulemd/contrib/valgrind/libmodulemd-python.supp /w/libmodulemd/libmodulemd/ci_valgrind/modulemd/buildconfig ==2586== Memcheck, a memory error detector ==2586== Copyright (C) 2002-2022, and GNU GPL'd, by Julian Seward et al. ==2586== Using Valgrind-3.19.0 and LibVEX; rerun with -h for copyright info ==2586== Command: /__w/libmodulemd/libmodulemd/ci_valgrind/modulemd/buildconfig ==2586==

valgrind: Fatal error at startup: a function redirection valgrind: which is mandatory for this platform-tool combination valgrind: cannot be set up. Details of the redirection are: valgrind: valgrind: A must-be-redirected function valgrind: whose name matches the pattern: strlen valgrind: in an object with soname matching: ld-linux-x86-64.so.2 valgrind: was not found whilst processing valgrind: symbols from the object with soname: ld-linux-x86-64.so.2

This looks like an intentional change in Arch glibc between 2.35-3 and 2.35-5. One needs to set up a debuginfod to be used by valgrind now. This is nomally done by a login shell, but step in GitHub actions do not execute a login shell by default. Do it explicitly.

https://bugs.archlinux.org/task/74755