diff --git a/pthread_stop_world.c b/pthread_stop_world.c index ae5bc77b4..33470e623 100644 --- a/pthread_stop_world.c +++ b/pthread_stop_world.c @@ -392,20 +392,6 @@ STATIC void GC_suspend_handler_inner(ptr_t dummy GC_ATTR_UNUSED, me -> backing_store_ptr = bs_lo + stack_size; # endif -# ifdef THREAD_SANITIZER - /* TSan disables signals around signal handlers. Without */ - /* a pthread_sigmask call, sigsuspend may block forever. */ - { - sigset_t set; - sigemptyset(&set); - GC_ASSERT(GC_sig_suspend != SIGNAL_UNSET); - GC_ASSERT(GC_sig_thr_restart != SIGNAL_UNSET); - sigaddset(&set, GC_sig_suspend); - sigaddset(&set, GC_sig_thr_restart); - if (pthread_sigmask(SIG_UNBLOCK, &set, NULL) != 0) - ABORT("pthread_sigmask failed in suspend handler"); - } -# endif /* Tell the thread that wants to stop the world that this */ /* thread has been stopped. Note that sem_post() is */ /* the only async-signal-safe primitive in LinuxThreads. */