CVSROOT:        /cvs
Module name:    src
Changes by:     v...@cvs.openbsd.org    2019/06/19 22:31:33

Modified files:
        sys/kern       : subr_log.c 

Log message:
Work around locking issues in logwakeup(). Instead of actually waking up
waiters, just set a flag in logwakeup(). The flag is later noted through
periodic polling. This lets the wakeup code run with sufficient locking.

logwakeup() is a very tricky place to take locks because the function
can be called in many different contexts. By not requiring locks in
the routine helps to keep printf(9) as usable as possible.

OK mpi@

Reply via email to