waitq_t
waitq_t *wq = &cap->cap_waitq;
waitq_link(waitq_t *wq, kthread_t *t)
waitq_unlink(waitq_t *wq, kthread_t *t)
waitq_enqueue(waitq_t *wq, kthread_t *t)
waitq_t *wq = t->t_waitq;
waitq_dequeue(waitq_t *wq, kthread_t *t)
waitq_isempty(waitq_t *wq)
waitq_t *wq = t->t_waitq;
waitq_takeone(waitq_t *wq)
waitq_runfirst(waitq_t *wq)
waitq_runone(waitq_t *wq)
waitq_runall(waitq_t *wq)
waitq_block(waitq_t *wq)
waitq_unblock(waitq_t *wq)
waitq_init(waitq_t *wq)
waitq_fini(waitq_t *wq)
waitq_t cap_waitq; /* waitq for capped threads */
extern void waitq_init(waitq_t *);
extern void waitq_fini(waitq_t *);
extern int waitq_enqueue(waitq_t *, kthread_t *);
extern void waitq_runone(waitq_t *);
extern boolean_t waitq_isempty(waitq_t *);
extern void waitq_block(waitq_t *);
extern void waitq_unblock(waitq_t *);