From 47d2bf5103fe7c65ae8dd18ba28704f143cdc9b4 Mon Sep 17 00:00:00 2001 From: Rich Felker Date: Fri, 26 Apr 2013 17:46:58 -0400 Subject: [PATCH] synccall signal handler need not handle dead threads anymore they have already blocked signals before decrementing the thread count, so the code being removed is unreachable in the case where the thread is no longer counted. --- src/thread/synccall.c | 9 --------- 1 file changed, 9 deletions(-) diff --git a/src/thread/synccall.c b/src/thread/synccall.c index 8c825ace..706c8e73 100644 --- a/src/thread/synccall.c +++ b/src/thread/synccall.c @@ -21,15 +21,6 @@ static void handler(int sig, siginfo_t *si, void *ctx) sigqueue(self->pid, SIGSYNCCALL, (union sigval){0}); - /* Threads which have already decremented themselves from the - * thread count must not act. Block further receipt of signals - * and return. */ - if (self->dead) { - memset(&((ucontext_t *)ctx)->uc_sigmask, -1, 8); - errno = old_errno; - return; - } - sem_init(&ch.sem, 0, 0); sem_init(&ch.sem2, 0, 0);