Merge #14764: travis: Run thread sanitizer on unit tests

fa7d36b8e7 test: Move UBSAN suppressions to test/sanitizer_suppressions/ubsan (MarcoFalke)
fa36d4e456 travis: --disable-hardening for xenial thread sanitizer (MarcoFalke)
89bf196c88 travis: Run thread sanitizer (MarcoFalke)

Pull request description:

  On unit tests only for now. Disabled for the gui unit tests and all functional tests.

Tree-SHA512: 56f7d3b44e7cb68c76a2dc5abd85658955b1c2188932e988667c5a1cbcdd6be995d37bb949d62c6eb08a4aebfc43ff0370b7da1719d4e4f322a3495c1941a5e0
This commit is contained in:
MarcoFalke
2018-11-23 09:38:08 -05:00
4 changed files with 32 additions and 6 deletions

View File

@@ -0,0 +1,24 @@
# ThreadSanitizer suppressions
# ============================
# fChecked is theoretically racy, practically only in unit tests
race:CheckBlock
# WalletBatch (unidentified deadlock)
deadlock:WalletBatch
# Intentional deadlock in tests
deadlock:TestPotentialDeadLockDetected
# Wildcard for all gui tests, should be replaced with non-wildcard suppressions
race:src/qt/test/*
deadlock:src/qt/test/*
# WIP: Unidentified suppressions to run the functional tests
#race:zmqpublishnotifier.cpp
#
#deadlock:CreateWalletFromFile
#deadlock:importprivkey
#deadlock:walletdb.h
#deadlock:walletdb.cpp
#deadlock:wallet/db.cpp

View File

@@ -0,0 +1,36 @@
alignment:move.h
alignment:prevector.h
bool:wallet/wallet.cpp
float-divide-by-zero:policy/fees.cpp
float-divide-by-zero:validation.cpp
float-divide-by-zero:wallet/wallet.cpp
nonnull-attribute:support/cleanse.cpp
unsigned-integer-overflow:arith_uint256.h
unsigned-integer-overflow:basic_string.h
unsigned-integer-overflow:bench/bench.h
unsigned-integer-overflow:bitcoin-tx.cpp
unsigned-integer-overflow:bloom.cpp
unsigned-integer-overflow:chain.cpp
unsigned-integer-overflow:chain.h
unsigned-integer-overflow:coded_stream.h
unsigned-integer-overflow:core_write.cpp
unsigned-integer-overflow:crypto/chacha20.cpp
unsigned-integer-overflow:crypto/ctaes/ctaes.c
unsigned-integer-overflow:crypto/ripemd160.cpp
unsigned-integer-overflow:crypto/sha1.cpp
unsigned-integer-overflow:crypto/sha256.cpp
unsigned-integer-overflow:crypto/sha512.cpp
unsigned-integer-overflow:hash.cpp
unsigned-integer-overflow:leveldb/db/log_reader.cc
unsigned-integer-overflow:leveldb/util/bloom.cc
unsigned-integer-overflow:leveldb/util/crc32c.h
unsigned-integer-overflow:leveldb/util/hash.cc
unsigned-integer-overflow:policy/fees.cpp
unsigned-integer-overflow:prevector.h
unsigned-integer-overflow:script/interpreter.cpp
unsigned-integer-overflow:stl_bvector.h
unsigned-integer-overflow:streams.h
unsigned-integer-overflow:txmempool.cpp
unsigned-integer-overflow:util/strencodings.cpp
unsigned-integer-overflow:validation.cpp
vptr:fs.cpp