From bfa172852fc20b06aca0fff67d31a09cc8a4ba04 Mon Sep 17 00:00:00 2001 From: Mahmoud Al-Qudsi Date: Mon, 24 Oct 2022 14:33:29 -0500 Subject: [PATCH] Add a workaround for intermittent LSAN crash under CI LSAN seems to have an issue with glibc's TLS functionality that causes it to intermittently crash with SIGSEGV when run virtualized, as it is in our CI. Relevant GitHub issues: * https://github.com/google/sanitizers/issues/1342 * https://github.com/google/sanitizers/issues/1409 --- .github/workflows/main.yml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 4f6f9b958..de73f8d7d 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -86,7 +86,11 @@ jobs: env: ASAN_OPTIONS: check_initialization_order=1:detect_stack_use_after_return=1:detect_leaks=1 UBSAN_OPTIONS: print_stacktrace=1:report_error_type=1 - LSAN_OPTIONS: verbosity=0:log_threads=0 + # use_tls=0 is a workaround for LSAN crashing with "Tracer caught signal 11" (SIGSEGV), + # which seems to be an issue with TLS support in newer glibc versions under virtualized + # environments. Follow https://github.com/google/sanitizers/issues/1342 and + # https://github.com/google/sanitizers/issues/1409 to track this issue. + LSAN_OPTIONS: verbosity=0:log_threads=0:use_tls=0 run: | make test