# Run-time flags: envvar TSAN_OPTIONS="';' delimited option list"
# Useful options (full list see https://github.com/google/sanitizers/wiki/ThreadSanitizerFlags):
# suppressions=<supression_file_name>
-# verosity=n Verbosity level (0 - silent, 1 - a bit of output, 2+ - more output).
+# verbosity=n Verbosity level (0 - silent, 1 - a bit of output, 2+ - more output).
# history_size=[0..7], default 2
+# detect_deadlocks=0 - some data structs in libcds tests use a lot of node-level mutexes.
+# TSan has the hardcoded limit =16 for the number of mutex per thread.
+# To prevent "possibly deadlock" reporting disable deadlock detection.
+# Suppression can help in that case but stack unwinding increases
+# test time significantly.
# false: LazyList potential deadlock
deadlock:cds/intrusive/impl/lazy_list.h
+deadlock:cds/intrusive/lazy_list_nogc.h
# false: BronsonAVLTree potential deadlock
deadlock:cds/container/impl/bronson_avltree_map_rcu.h
#TODO: temporary suppressed. Must be researched later
race:cds/container/impl/bronson_avltree_map_rcu.h
-
-#TODO: MSPriorityQueue - temporary suppressed. Must be researched later
-# Seems, TSan don't see spinlock blocking. How to learn TSan to see non-traditional locking algo?..
-race:cds::intrusive::MSPriorityQueue
-
-#TODO: gc::DHP must be reimplemented ASAP
-race:cds::gc::dhp::GarbageCollector::scan
-
-#TODO: temporary suppressed. Must be researched later
-race:cds::memory::michael::Heap
\ No newline at end of file