| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
sleepq_signal().
Prodded by: attilio
|
|
|
|
|
|
|
| |
sleepq_signal() to reflect recent changes
Submitted by: attilio
Approved by: re (bmah)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
event. Locking primitives that support this (mtx, rw, and sx) now each
include their own foo_sleep() routine.
- Rename msleep() to _sleep() and change it's 'struct mtx' object to a
'struct lock_object' pointer. _sleep() uses the recently added
lc_unlock() and lc_lock() function pointers for the lock class of the
specified lock to release the lock while the thread is suspended.
- Add wrappers around _sleep() for mutexes (mtx_sleep()), rw locks
(rw_sleep()), and sx locks (sx_sleep()). msleep() still exists and
is now identical to mtx_sleep(), but it is deprecated.
- Rename SLEEPQ_MSLEEP to SLEEPQ_SLEEP.
- Rewrite much of sleep.9 to not be msleep(9) centric.
- Flesh out the 'RETURN VALUES' section in sleep.9 and add an 'ERRORS'
section.
- Add __nonnull(1) to _sleep() and msleep_spin() so that the compiler will
warn if you try to pass a NULL wait channel. The functions already have
a KASSERT to that effect.
|
| |
|
|
|
|
|
|
|
|
| |
which allows to use it with different kinds of locks. For example it allows
to implement Solaris conditions variables which will be used in ZFS port on
top of sx(9) locks.
Reviewed by: jhb
|
|
|
|
|
|
| |
in -current.
Reviewed by: ru
|
| |
|
|
|
|
|
| |
argument to sleepq_timedwait() and the enhancements to the flags argument
passed to sleepq_add().
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
the current state of the system.
Approved by: alfred
|
| |
|
| |
|
| |
|
|
the sleep queues used by msleep/wakeup and friends.
Submitted by: sheldonh
|