Lines Matching defs:waiters

657  * Unlocks upimutex, waking up waiters if any. upimutex kmem is freed if
670 if (upimutex->upi_waiter != 0) { /* if waiters */
689 * waiters.
696 * no waiters, or LOCK_NOTRECOVERABLE.
776 * waiters are present at unlock time,
839 * 4. The waiter value cannot be a count of waiters, because a waiter
953 * all waiters, including curthread, which will then
1116 * LOCK_NOTRECOVERABLE flag, so that all waiters are
1119 * The waiters will now all wake up and return
1128 * Unlock the upimutex: if no waiters, upip kmem will
1134 * it will find the upimutex has no waiters. So,
1158 uchar_t waiters;
1244 fuword8_noerr(&lp->mutex_waiters, &waiters);
1311 * Need to re-compute waiters bit. The waiters field in
1326 waiters = iswanted(sqh->sq_queue.sq_first, &lwpchan);
1335 fuword8_noerr(&lp->mutex_waiters, &waiters);
1363 suword8_noerr(&lp->mutex_waiters, waiters);
1413 lwp_release(lwpchan_t *lwpchan, uchar_t *waiters, int sync_type)
1428 * lwp_mutex_wakeup() after reading the waiters field
1446 *waiters = iswanted(tp->t_link, lwpchan);
1460 *waiters = 0;
1501 uchar_t waiters;
1554 else if (lwp_release(&lwpchan, &waiters, 0))
1555 suword8_noerr(&lp->mutex_waiters, waiters);
1588 uchar_t waiters;
1701 fuword8_noerr(&mp->mutex_waiters, &waiters);
1702 if (waiters != 0) {
1705 * of the mutex and checking for waiters, the following
1715 if (lwp_release(&m_lwpchan, &waiters, 0))
1716 suword8_noerr(&mp->mutex_waiters, waiters);
1817 fuword8_noerr(&mp->mutex_waiters, &waiters);
1818 if (waiters != 0) {
1823 if (lwp_release(&m_lwpchan, &waiters, 0))
1824 suword8_noerr(&mp->mutex_waiters, waiters);
1850 uchar_t waiters;
1882 fuword8_noerr(&cv->cond_waiters_kernel, &waiters);
1883 if (waiters != 0) {
1886 * OK to write into the waiters bit below, since the memory
1894 (void) lwp_release(&lwpchan, &waiters, T_WAITCVSEM);
1895 suword8_noerr(&cv->cond_waiters_kernel, waiters);
1919 uchar_t waiters;
1947 fuword8_noerr(&cv->cond_waiters_kernel, &waiters);
1948 if (waiters != 0) {
1973 uchar_t waiters;
2007 fuword8_noerr(&sp->sema_waiters, &waiters);
2008 if (waiters != 0) {
2009 (void) lwp_release(&lwpchan, &waiters, T_WAITCVSEM);
2010 suword8_noerr(&sp->sema_waiters, waiters);
2041 uchar_t waiters;
2155 (void) lwp_release(&lwpchan, &waiters, T_WAITCVSEM);
2156 suword8_noerr(&sp->sema_waiters, waiters);
2180 uchar_t waiters;
2214 fuword8_noerr(&sp->sema_waiters, &waiters);
2215 if (waiters) {
2216 (void) lwp_release(&lwpchan, &waiters, T_WAITCVSEM);
2217 suword8_noerr(&sp->sema_waiters, waiters);
2471 * The possibility of spurious wake-ups or killed waiters means
2476 * is not held, but there are waiters) we assume these are applicaton
2494 * Hmmm, rwstate indicates waiters but there are
2521 * release spurious waiters.
2584 * the mutex and checking for waiters, the following
2879 uchar_t waiters;
2935 * If there are waiters, we wake up one or all of them.
2940 fuword8_noerr(&lp->mutex_waiters, &waiters);
2941 if (waiters != 0) { /* there are waiters */
2947 &waiters, 0)) {
2949 waiters);
2958 fuword8_noerr(&lp->mutex_waiters, &waiters);
2959 if (waiters &&
2960 lwp_release(&ent->lwpchan_lwpchan, &waiters, 0))
2961 suword8_noerr(&lp->mutex_waiters, waiters);
3142 uchar_t waiters;
3214 fuword8_noerr(&lp->mutex_waiters, &waiters);
3215 if (waiters) {
3220 } else if (lwp_release(&lwpchan, &waiters, 0)) {
3221 suword8_noerr(&lp->mutex_waiters, waiters);