Module Name: src Committed By: ad Date: Fri Apr 10 17:16:22 UTC 2020
Modified Files: src/share/man/man9: condvar.9 src/sys/kern: kern_condvar.c kern_sleepq.c subr_lockdebug.c src/sys/sys: lockdebug.h lwp.h Log Message: - Make this needed sequence always work for condvars, by not touching the CV again after wakeup. Previously it could panic because cv_signal() could be called by cv_wait_sig() + others: cv_broadcast(cv); cv_destroy(cv); - In support of the above, if an LWP doing a timed wait is awoken by cv_broadcast() or cv_signal(), don't return an error if the timer fires after the fact, i.e. either succeed or fail, not both. - Remove LOCKDEBUG code for CVs which never worked properly and is of questionable use. To generate a diff of this commit: cvs rdiff -u -r1.21 -r1.22 src/share/man/man9/condvar.9 cvs rdiff -u -r1.44 -r1.45 src/sys/kern/kern_condvar.c cvs rdiff -u -r1.63 -r1.64 src/sys/kern/kern_sleepq.c cvs rdiff -u -r1.75 -r1.76 src/sys/kern/subr_lockdebug.c cvs rdiff -u -r1.21 -r1.22 src/sys/sys/lockdebug.h cvs rdiff -u -r1.205 -r1.206 src/sys/sys/lwp.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.