Page MenuHomePhabricator

tests: Fix lock-order-inversion (potential deadlock) in DoS_tests.
ClosedPublic

Authored by Fabien on Jul 9 2019, 12:03.

Details

Summary
Reported by TSAN.

Makes `src/test/test_bitcoin --run_test=DoS_tests` pass also when
compiled with TreadSanitizer (`./configure --with-sanitizers=thread`).

Backport of core PR12882
https://github.com/bitcoin/bitcoin/pull/12882/files

Test Plan
mkdir build && cd build
../configure --with-sanitizers=thread
make
export TSAN_OPTIONS="suppressions=${PWD}/../test/sanitizer_suppressions/tsan"
./src/test/test_bitcoin -t denialofservice_tests

Diff Detail

Repository
rABC Bitcoin ABC
Branch
PR12882
Lint
Lint OK
Unit
No Unit Test Coverage
Build Status
Buildable 6754
Build 11555: Bitcoin ABC Buildbot (legacy)
Build 11554: arc lint + arc unit

Event Timeline

Fabien created this revision.Jul 9 2019, 12:03
Herald added a reviewer: Restricted Project. · View Herald TranscriptJul 9 2019, 12:03
deadalnix requested changes to this revision.Jul 9 2019, 12:13
deadalnix added inline comments.
test/sanitizer_suppressions/tsan
17

This doesn't looks like it is related.

This revision now requires changes to proceed.Jul 9 2019, 12:13
Fabien updated this revision to Diff 10137.Jul 9 2019, 16:45

Remove unrelated tsan edit.

deadalnix accepted this revision.Jul 9 2019, 17:28
This revision is now accepted and ready to land.Jul 9 2019, 17:28