From owner-cvs-all Thu Dec 16 16:56:46 1999 Delivered-To: cvs-all@freebsd.org Received: from freefall.freebsd.org (freefall.FreeBSD.ORG [204.216.27.21]) by hub.freebsd.org (Postfix) with ESMTP id D61F315270; Thu, 16 Dec 1999 16:56:38 -0800 (PST) (envelope-from deischen@FreeBSD.org) Received: (from deischen@localhost) by freefall.freebsd.org (8.9.3/8.9.2) id QAA57973; Thu, 16 Dec 1999 16:56:38 -0800 (PST) (envelope-from deischen@FreeBSD.org) Message-Id: <199912170056.QAA57973@freefall.freebsd.org> From: Daniel Eischen Date: Thu, 16 Dec 1999 16:56:37 -0800 (PST) To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/lib/libc_r/uthread pthread_private.h uthread_kern.c uthread_kill.c uthread_sig.c uthread_wait4.c Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk deischen 1999/12/16 16:56:37 PST Modified files: lib/libc_r/uthread pthread_private.h uthread_kern.c uthread_kill.c uthread_sig.c uthread_wait4.c Log: Fixes for signal handling: o Don't call signal handlers with the signal handler access lock held. o Remove pending signals before calling signal handlers. If pending signals were not removed prior to handling them, invocation of the handler could cause the handler to be called more than once for the same signal. Found by: JB o When SIGCHLD arrives, wake up all threads in PS_WAIT_WAIT (wait4). PR: bin/15328 Reviewed by: jasone Revision Changes Path 1.31 +4 -2 src/lib/libc_r/uthread/pthread_private.h 1.25 +7 -2 src/lib/libc_r/uthread/uthread_kern.c 1.10 +2 -94 src/lib/libc_r/uthread/uthread_kill.c 1.22 +198 -52 src/lib/libc_r/uthread/uthread_sig.c 1.7 +2 -2 src/lib/libc_r/uthread/uthread_wait4.c To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message