After some digging it would appear the patch has not been committed ?

From 
/src/sys/kern/subr_sleepqueue.c
        /*
         * Lock sleepq chain before unlocking proc
         * without this, we could lose a race.
         */
        mtx_lock_spin(&sc->sc_lock);
        PROC_UNLOCK(p);
        thread_lock(td);
        if (ret == 0) {

Should read
       /*
+        * Lock the per-process spinlock prior to dropping the PROC_LOCK
+        * to avoid a signal delivery race.  PROC_LOCK, PROC_SLOCK, and
+        * thread_lock() are currently held in tdsignal().
         */
+       PROC_SLOCK(p);
        mtx_lock_spin(&sc->sc_lock);
        PROC_UNLOCK(p);
        thread_lock(td);
+       PROC_SUNLOCK(p);
        if (ret == 0) {

Also :
__FBSDID("$FreeBSD: src/sys/kern/subr_sleepqueue.c,v 1.39.4.1 2008/01/29
16:37:04 jhb Exp $");

Regards

--
David Peall :: IT Manager
e-Schools' Network :: http://www.esn.org.za/
Phone +27 (021) 674-9140

_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to