diff options
author | Ivan Maidanski <ivmai@mail.ru> | 2022-05-23 20:22:26 +0300 |
---|---|---|
committer | Ivan Maidanski <ivmai@mail.ru> | 2022-06-15 22:58:01 +0300 |
commit | 6a6dfe829d8aa55bede0b793b7c270203a06f6db (patch) | |
tree | d6bc656aba59951a69775c55f8ea5e4a180e6533 | |
parent | c5fb8828c247373200c80d33771bfa3c5956b8ed (diff) | |
download | bdwgc-6a6dfe829d8aa55bede0b793b7c270203a06f6db.tar.gz |
Remove useless TSan W/A about read of mark_lock_holder for Windows
(fix of commit 0fbe44656)
TSan itself is not supported on Windows (native and Cygwin) yet.
* win32_threads.c [PARALLEL_MARK && (!GC_PTHREADS_PARAMARK
|| NUMERIC_THREAD_ID_UNIQUE)] (GC_acquire_mark_lock): Assertion about
GC_mark_lock_holder regardless of THREAD_SANITIZER.
-rw-r--r-- | win32_threads.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/win32_threads.c b/win32_threads.c index 196bc7bf..788134c5 100644 --- a/win32_threads.c +++ b/win32_threads.c @@ -2095,7 +2095,7 @@ GC_INNER void GC_get_next_stack(char *start, char *limit, GC_INNER void GC_acquire_mark_lock(void) { -# if defined(NUMERIC_THREAD_ID_UNIQUE) && !defined(THREAD_SANITIZER) +# ifdef NUMERIC_THREAD_ID_UNIQUE GC_ASSERT(GC_mark_lock_holder != NUMERIC_THREAD_ID(pthread_self())); # endif if (pthread_mutex_lock(&mark_mutex) != 0) { @@ -2274,9 +2274,7 @@ GC_INNER void GC_get_next_stack(char *start, char *limit, GC_INNER void GC_acquire_mark_lock(void) { -# ifndef THREAD_SANITIZER - GC_ASSERT(GC_mark_lock_holder != GetCurrentThreadId()); -# endif + GC_ASSERT(GC_mark_lock_holder != GetCurrentThreadId()); if (InterlockedExchange(&GC_mark_mutex_state, 1 /* locked */) != 0) { # ifdef LOCK_STATS (void)AO_fetch_and_add1(&GC_block_count); |