svn commit: r191812 - in stable/7/sys: . contrib/pf dev/ath/ath_hal dev/cxgb kern

Konstantin Belousov kib at FreeBSD.org
Tue May 5 09:24:21 UTC 2009


Author: kib
Date: Tue May  5 09:24:20 2009
New Revision: 191812
URL: http://svn.freebsd.org/changeset/base/191812

Log:
  MFC r191313:
  On the exit of the child process which parent either set SA_NOCLDWAIT
  or ignored SIGCHLD, unconditionally wake up the parent instead of doing
  this only when the child is a last child.
  
  MFC r191319:
  Fix typo.

Modified:
  stable/7/sys/   (props changed)
  stable/7/sys/contrib/pf/   (props changed)
  stable/7/sys/dev/ath/ath_hal/   (props changed)
  stable/7/sys/dev/cxgb/   (props changed)
  stable/7/sys/kern/kern_exit.c

Modified: stable/7/sys/kern/kern_exit.c
==============================================================================
--- stable/7/sys/kern/kern_exit.c	Tue May  5 09:20:07 2009	(r191811)
+++ stable/7/sys/kern/kern_exit.c	Tue May  5 09:24:20 2009	(r191812)
@@ -511,13 +511,13 @@ retry:
 		proc_reparent(p, initproc);
 		p->p_sigparent = SIGCHLD;
 		PROC_LOCK(p->p_pptr);
+
 		/*
-		 * If this was the last child of our parent, notify
-		 * parent, so in case he was wait(2)ing, he will
+		 * Notify parent, so in case he was wait(2)ing or
+		 * executing waitpid(2) with our pid, he will
 		 * continue.
 		 */
-		if (LIST_EMPTY(&pp->p_children))
-			wakeup(pp);
+		wakeup(pp);
 	} else
 		mtx_unlock(&p->p_pptr->p_sigacts->ps_mtx);
 


More information about the svn-src-stable-7 mailing list