Skip to content

Commit 6df1431

Browse files
berrangeMichael Tokarev
authored andcommitted
gitlab: use 'setarch -R' to workaround tsan bug
The TSAN job started failing when gitlab rolled out their latest release. The root cause is a change in the Google COS version used on shared runners. This brings a kernel running with vm.mmap_rnd_bits = 31 which is incompatible with TSAN in LLVM < 18, which only supports upto '28'. LLVM 18 can support upto '30', and failing that will re-exec itself to turn off VA randomization. Our LLVM is too old for now, but we can run with 'setarch -R make ..' to turn off VA randomization ourselves. Signed-off-by: Daniel P. Berrangé <[email protected]> Reviewed-by: Thomas Huth <[email protected]> Message-ID: <[email protected]> Signed-off-by: Thomas Huth <[email protected]> (cherry picked from commit b563959) Signed-off-by: Michael Tokarev <[email protected]>
1 parent d488e25 commit 6df1431

File tree

1 file changed

+3
-0
lines changed

1 file changed

+3
-0
lines changed

.gitlab-ci.d/buildtest.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -575,6 +575,9 @@ tsan-build:
575575
CONFIGURE_ARGS: --enable-tsan --cc=clang --cxx=clang++
576576
--enable-trace-backends=ust --disable-slirp
577577
TARGETS: x86_64-softmmu ppc64-softmmu riscv64-softmmu x86_64-linux-user
578+
# Remove when we switch to a distro with clang >= 18
579+
# https://github.com/google/sanitizers/issues/1716
580+
MAKE: setarch -R make
578581

579582
# gcov is a GCC features
580583
gcov:

0 commit comments

Comments
 (0)