diff --git a/.github/workflows/reusable-build-test-config.yml b/.github/workflows/reusable-build-test-config.yml index 802a88c0fa..f9564565b5 100644 --- a/.github/workflows/reusable-build-test-config.yml +++ b/.github/workflows/reusable-build-test-config.yml @@ -166,7 +166,7 @@ jobs: PARALLELISM: ${{ runner.os == 'Windows' && '1' || steps.nproc.outputs.nproc }} run: | export ASAN_OPTIONS="suppressions=$GITHUB_WORKSPACE/external/asan.supp" - export TSAN_OPTIONS="suppressions=$GITHUB_WORKSPACE/external/tsan.supp" + export TSAN_OPTIONS="second_deadlock_stack=1 suppressions=$GITHUB_WORKSPACE/external/tsan.supp" export UBSAN_OPTIONS="suppressions=$GITHUB_WORKSPACE/external/ubsan.supp" export LSAN_OPTIONS="suppressions=$GITHUB_WORKSPACE/external/lsan.supp" ctest \ @@ -181,7 +181,7 @@ jobs: BUILD_NPROC: ${{ steps.nproc.outputs.nproc }} run: | export ASAN_OPTIONS="suppressions=$GITHUB_WORKSPACE/external/asan.supp" - export TSAN_OPTIONS="suppressions=$GITHUB_WORKSPACE/external/tsan.supp" + export TSAN_OPTIONS="second_deadlock_stack=1 suppressions=$GITHUB_WORKSPACE/external/tsan.supp" export UBSAN_OPTIONS="suppressions=$GITHUB_WORKSPACE/external/ubsan.supp" export LSAN_OPTIONS="suppressions=$GITHUB_WORKSPACE/external/lsan.supp" ./rippled --unittest --unittest-jobs "${BUILD_NPROC}" diff --git a/external/tsan.supp b/external/tsan.supp index 8cb5d7c25f..4afa3180f8 100644 --- a/external/tsan.supp +++ b/external/tsan.supp @@ -5,6 +5,7 @@ race:.*/boost/asio/.* race:.*/boost/context/.* race:.*/boost/asio/executor.hpp race:.*boost::asio::.* +race:boost::asio race:.*/src/libxrpl/basics/make_SSLContext.cpp race:.*/src/libxrpl/basics/Number.cpp @@ -66,6 +67,11 @@ deadlock:*PropertyStream* deadlock:*find_one* deadlock:*find_one_deep* +# Aggressive suppressing of deadlock tsan errors +deadlock:pthread_create +deadlock:pthread_rwlock_rdlock +deadlock:boost::asio + deadlock:.*/src/xrpld/app/misc/detail/Manifest.cpp deadlock:.*/src/xrpld/app/misc/detail/ValidatorList.cpp deadlock:.*/src/xrpld/app/misc/detail/ValidatorSite.cpp