Ed Schouten ca1d2f657a Make /dev/klog and kern.msgbuf* MPSAFE.
Normally msgbufp is locked using Giant. Switch it to use the
msgbuf_lock. Instead of changing the tsleep() calls to msleep(), just
convert it to condvar(9).

In my opinion the locking around msgbuf_peekbytes() still remains
questionable. It looks like locks are dropped while performing copies of
multiple blocks to userspace, which may cause the msgbuf to be reset in
the mean time. At least getting it underneath from Giant should make it
a little easier for us to figure out how to solve that.

Reminded by:	rdivacky
2009-11-03 21:06:19 +00:00
..
2009-10-31 13:24:14 +00:00
2009-11-03 11:19:05 +00:00
2009-11-03 20:22:09 +00:00
2009-06-25 16:48:13 +00:00
2009-10-24 09:55:11 +00:00
2009-10-24 18:49:17 +00:00