Skip to content

Commit

Permalink
CI: Set up debuginfod for Arch
Browse files Browse the repository at this point in the history
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 MALLOC_PERTURB_=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
  • Loading branch information
ppisar committed May 17, 2022
1 parent a6daf69 commit a0741ff
Showing 1 changed file with 3 additions and 0 deletions.
3 changes: 3 additions & 0 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -299,6 +299,9 @@ jobs:
run: ninja -C ci_valgrind

- name: Run valgrind tests
# Run profile scripts to set debuginfo environment variable,
# <https://bugs.archlinux.org/task/74755>
shell: bash --login -eo pipefail {0}
run:
meson test -C ci_valgrind --suite ci_valgrind --print-errorlogs -t 10
--wrap=$GITHUB_WORKSPACE/contrib/valgrind/valgrind_wrapper.sh
Expand Down

0 comments on commit a0741ff

Please sign in to comment.