From 5b356616a7409b7863914f98651fff2683bbf92e Mon Sep 17 00:00:00 2001 From: synqa Date: Sat, 21 Feb 2026 20:26:39 +0900 Subject: [PATCH] Suppress Thread Sanitizer for ThreadPoolProc Thread Sanitizer reports data races on PoolHalting in THREAD, shared between ThreadPoolProc and WaitThread. But if WaitThread reads false, synchronization is ensured by Wait from the PoolWaitList. If it reads true, WaitThread simply returns. --- tsan_suppressions.txt | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/tsan_suppressions.txt b/tsan_suppressions.txt index fc128a69..6719eb91 100644 --- a/tsan_suppressions.txt +++ b/tsan_suppressions.txt @@ -17,6 +17,10 @@ race_top:BindConnectThreadForIPv4 race_top:BindConnectThreadForIPv6 race_top:BindConnectEx5 +# Thread Sanitizer reports data races on PoolHalting in THREAD, shared between ThreadPoolProc and WaitThread. +# But if WaitThread reads false, synchronization is ensured by Wait from the PoolWaitList. If it reads true, +# WaitThread simply returns. +race_top:ThreadPoolProc ## Manual PTHREAD_MUTEX_RECURSIVE # The Lock/Unlock mechanism on Unix is a manual, hand-coded implementation of PTHREAD_MUTEX_RECURSIVE.