summaryrefslogtreecommitdiff
path: root/src/thread/synccall.c
diff options
context:
space:
mode:
authorRich Felker <dalias@aerifal.cx>2013-04-26 17:46:58 -0400
committerRich Felker <dalias@aerifal.cx>2013-04-26 17:46:58 -0400
commit47d2bf5103fe7c65ae8dd18ba28704f143cdc9b4 (patch)
treee81c48a83ecfcce3832dc932cc45695ba9e8742c /src/thread/synccall.c
parent082fb4e9bfd105fab3443c7b055bd9c22bdffcec (diff)
downloadmusl-47d2bf5103fe7c65ae8dd18ba28704f143cdc9b4.tar.gz
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.
Diffstat (limited to 'src/thread/synccall.c')
-rw-r--r--src/thread/synccall.c9
1 files changed, 0 insertions, 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);