Lines Matching refs:wqp
689 queue_t *wqp = &qip->qu_wqueue; in queue_constructor() local
707 wqp->q_first = NULL; in queue_constructor()
708 wqp->q_link = NULL; in queue_constructor()
709 wqp->q_count = 0; in queue_constructor()
710 wqp->q_mblkcnt = 0; in queue_constructor()
711 wqp->q_sqhead = NULL; in queue_constructor()
712 wqp->q_sqtail = NULL; in queue_constructor()
713 wqp->q_sqnext = NULL; in queue_constructor()
714 wqp->q_sqprev = NULL; in queue_constructor()
715 wqp->q_sqflags = 0; in queue_constructor()
716 wqp->q_rwcnt = 0; in queue_constructor()
717 wqp->q_spri = 0; in queue_constructor()
719 mutex_init(QLOCK(wqp), NULL, MUTEX_DEFAULT, NULL); in queue_constructor()
720 cv_init(&wqp->q_wait, NULL, CV_DEFAULT, NULL); in queue_constructor()
750 queue_t *wqp = &qip->qu_wqueue; in queue_destructor() local
754 ASSERT(wqp->q_sqhead == NULL); in queue_destructor()
756 ASSERT(wqp->q_sqnext == NULL); in queue_destructor()
758 ASSERT(wqp->q_rwcnt == 0); in queue_destructor()
763 mutex_destroy(&wqp->q_lock); in queue_destructor()
764 cv_destroy(&wqp->q_wait); in queue_destructor()
1225 queue_t *wqp = _WR(qp); in qreopen() local
1232 (wqp->q_next ? 0 : flag), (wqp->q_next ? MODOPEN : 0), crp))) { in qreopen()
1258 queue_t *wqp = _WR(qp); in qdetach() local
1270 wait_q_syncq(wqp); in qdetach()
1282 ASSERT((qp->q_flag & QWCLOSE) && (wqp->q_flag & QWCLOSE)); in qdetach()
1303 ASSERT(flush_syncq(wqp->q_syncq, wqp) == 0); in qdetach()
1306 (wqp->q_syncq->sq_head == NULL))); in qdetach()
1321 queue_t *wqp = _WR(qp); in disable_svc() local
1327 mutex_enter(QLOCK(wqp)); in disable_svc()
1328 wqp->q_flag |= QWCLOSE; in disable_svc()
1329 mutex_exit(QLOCK(wqp)); in disable_svc()
1336 queue_t *wqp = _WR(qp); in enable_svc() local
1342 mutex_enter(QLOCK(wqp)); in enable_svc()
1343 wqp->q_flag &= ~QWCLOSE; in enable_svc()
1344 mutex_exit(QLOCK(wqp)); in enable_svc()
1389 queue_t *wqp = _WR(qp); in wait_svc() local
1398 remove_runlist(wqp); in wait_svc()
1413 syncq_t *wsq = wqp->q_syncq; in wait_svc()
1428 mutex_enter(QLOCK(wqp)); in wait_svc()
1429 while (wqp->q_flag & (QINSERVICE|QENAB)) in wait_svc()
1430 cv_wait(&wqp->q_wait, QLOCK(wqp)); in wait_svc()
1431 mutex_exit(QLOCK(wqp)); in wait_svc()
3352 queue_t *qp, *wqp; in allocq() local
3358 wqp = &qip->qu_wqueue; in allocq()
3377 wqp->q_last = NULL; in allocq()
3378 wqp->q_next = NULL; in allocq()
3379 wqp->q_ptr = NULL; in allocq()
3380 wqp->q_flag = QUSE; in allocq()
3381 wqp->q_bandp = NULL; in allocq()
3382 wqp->q_stream = NULL; in allocq()
3383 wqp->q_syncq = sq; in allocq()
3384 wqp->q_nband = 0; in allocq()
3385 wqp->q_nfsrv = NULL; in allocq()
3386 wqp->q_draining = 0; in allocq()
3387 wqp->q_syncqmsgs = 0; in allocq()
3388 wqp->q_qtstamp = 0; in allocq()
3389 wqp->q_sqtstamp = 0; in allocq()
3390 wqp->q_spri = 0; in allocq()
3416 queue_t *wqp = _WR(qp); in freeq() local
3429 (void) flush_syncq(wqp->q_syncq, wqp); in freeq()
3430 ASSERT(qp->q_syncqmsgs == 0 && wqp->q_syncqmsgs == 0); in freeq()
3440 flushq(wqp, FLUSHALL); in freeq()
3443 qp->q_next = wqp->q_next = NULL; in freeq()
3445 ASSERT(!(wqp->q_flag & QENAB)); in freeq()
3450 if (wqp->q_syncq != qp->q_syncq) in freeq()
3451 outer_remove(outer, wqp->q_syncq); in freeq()
3458 if (qp->q_syncq != wqp->q_syncq && wqp->q_syncq != SQ(qp)) in freeq()
3459 free_syncq(wqp->q_syncq); in freeq()
3462 ASSERT((wqp->q_sqflags & (Q_SQQUEUED | Q_SQDRAINING)) == 0); in freeq()
3464 ASSERT(MUTEX_NOT_HELD(QLOCK(wqp))); in freeq()
3483 ASSERT(qp->q_first == NULL && wqp->q_first == NULL); in freeq()
3484 ASSERT(qp->q_count == 0 && wqp->q_count == 0); in freeq()
3485 ASSERT(qp->q_mblkcnt == 0 && wqp->q_mblkcnt == 0); in freeq()
3488 wqp->q_flag &= ~QUSE; in freeq()
3499 qbp = wqp->q_bandp; in freeq()
4854 queue_t *wqp = _WR(qp); in removeq() local
4860 syncq_t *wsq = wqp->q_syncq; in removeq()
4865 "removeq:%p %p", qp, wqp); in removeq()
4897 mutex_enter(QLOCK(wqp)); in removeq()
4898 while (wqp->q_rwcnt > 0) { in removeq()
4899 wqp->q_flag |= QWANTRMQSYNC; in removeq()
4900 cv_wait(&wqp->q_wait, QLOCK(wqp)); in removeq()
4902 mutex_exit(QLOCK(wqp)); in removeq()
4918 reset_nfsrv_ptr(qp, wqp); in removeq()
4920 ASSERT(wqp->q_next == NULL || backq(qp)->q_next == qp); in removeq()
4921 ASSERT(qp->q_next == NULL || backq(wqp)->q_next == wqp); in removeq()
4923 if (wqp->q_next == qp) { in removeq()
4926 if (wqp->q_next) in removeq()
4929 backq(wqp)->q_next = wqp->q_next; in removeq()
4949 if (wqp->q_syncqmsgs != 0 || in removeq()
4950 (wqp->q_syncq->sq_flags & SQ_EVENTS)) in removeq()
4951 moved += propagate_syncq(wqp); in removeq()
4979 if (wqp->q_next != NULL) { in removeq()
4980 clr_qfull(wqp); in removeq()
4988 emptysq(wqp->q_next->q_syncq); in removeq()
7715 reset_nfsrv_ptr(queue_t *rqp, queue_t *wqp) in reset_nfsrv_ptr() argument
7720 if ((rqp->q_flag & _QREMOVING) && (wqp->q_qinfo->qi_srvp != NULL)) { in reset_nfsrv_ptr()
7721 for (tmp_qp = backq(wqp); in reset_nfsrv_ptr()
7722 tmp_qp != NULL && tmp_qp->q_nfsrv == wqp; in reset_nfsrv_ptr()
7724 tmp_qp->q_nfsrv = wqp->q_nfsrv; in reset_nfsrv_ptr()
7730 if (wqp->q_next) { /* non-driver case */ in reset_nfsrv_ptr()
7731 tmp_qp = _OTHERQ(wqp->q_next); in reset_nfsrv_ptr()