From owner-freebsd-stable Fri Jul 27 6:52: 5 2001 Delivered-To: freebsd-stable@freebsd.org Received: from salmon.maths.tcd.ie (salmon.maths.tcd.ie [134.226.81.11]) by hub.freebsd.org (Postfix) with SMTP id 5DF3C37B405; Fri, 27 Jul 2001 06:51:58 -0700 (PDT) (envelope-from iedowse@maths.tcd.ie) Received: from walton.maths.tcd.ie by salmon.maths.tcd.ie with SMTP id ; 27 Jul 2001 14:51:57 +0100 (BST) To: dillon@freebsd.org Cc: current@freebsd.org, stable@freebsd.org Subject: SIGCHLD changes causing fault on nofault entry panics Date: Fri, 27 Jul 2001 14:51:57 +0100 From: Ian Dowse Message-ID: <200107271451.aa00148@salmon.maths.tcd.ie> Sender: owner-freebsd-stable@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG The panics in exit1() that have been reported on -stable appear to be caused by these commits: REV:1.92.2.4 kern_exit.c 2001/07/25 17:21:46 dillon REV:1.72.2.7 kern_sig.c 2001/07/25 17:21:46 dillon MFC kern_exit.c 1.131, kern_sig.c 1.125 - bring SIGCHLD SIG_IGN signal handling in line with other operating systems. These probably correspond to similar panics seen in -current, but I haven't checked the details. In the vmcore I just got, the panic occurred in the following fragment in exit1(), when dereferencing p_sigacts (which is p_procsig->ps_sigacts). I guess there is a race here if the parent is exiting or something? + if ((p->p_pptr->p_procsig->ps_flag & PS_NOCLDWAIT) + || p->p_pptr->p_sigacts->ps_sigact[_SIG_IDX(SIGCHLD)] == SIG_IGN) { Matt, I will just back out these changes from RELENG_4 shortly until the issue is resolved. The change was non-essential and quite contained, so it's probably better than waiting for a fix. Ian To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-stable" in the body of the message