cvs commit: src/share/man/man9 condvar.9 sleep.9 src/sys/kern kern_condvar.c kern_synch.c

Ed Schouten ed at 80386.nl
Thu Aug 7 21:27:02 UTC 2008


* John Baldwin <jhb at FreeBSD.org> wrote:
> Permit Giant to be passed as the explicit interlock either to
> msleep/mtx_sleep or the various cv_*wait*() routines.  Currently, the
> "unlock" behavior of PDROP and cv_wait_unlock() with Giant is not
> permitted as it is will be confusing since Giant is fully unrecursed and
> unlocked during a thread sleep.
> 
> This is handy for subsystems which wish to allow unlocked drivers to
> continue to use Giant such as CAM, the new TTY layer, and the new USB
> stack.  CAM currently uses a hack that I told Scott to use because I
> really didn't want to permit this behavior, and the TTY and USB patches
> both have various patches to permit this.

Thanks a lot, John! As you mentioned, this was one of the things I
needed in the MPSAFE TTY layer. I'll remove my evil hacks from the
code in a sec.

Yours,
-- 
 Ed Schouten <ed at 80386.nl>
 WWW: http://80386.nl/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 195 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/cvs-all/attachments/20080807/9c465e89/attachment.pgp


More information about the cvs-all mailing list