Source-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: src



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.




Home | Main Index | Thread Index | Old Index