Home
last modified time | relevance | path

Searched refs:wq (Results 1 – 25 of 135) sorted by relevance

123456

/illumos-gate/usr/src/uts/common/os/
H A Dwaitq.c44 waitq_init(waitq_t *wq) in waitq_init() argument
46 DISP_LOCK_INIT(&wq->wq_lock); in waitq_init()
47 wq->wq_first = NULL; in waitq_init()
48 wq->wq_count = 0; in waitq_init()
49 wq->wq_blocked = B_TRUE; in waitq_init()
53 waitq_fini(waitq_t *wq) in waitq_fini() argument
55 ASSERT(wq->wq_count == 0); in waitq_fini()
56 ASSERT(wq->wq_first == NULL); in waitq_fini()
57 ASSERT(wq->wq_blocked == B_TRUE); in waitq_fini()
58 ASSERT(!DISP_LOCK_HELD(&wq->wq_lock)); in waitq_fini()
[all …]
/illumos-gate/usr/src/uts/common/io/fibre-channel/fca/oce/
H A Doce_tx.c31 static void oce_free_wqed(struct oce_wq *wq, oce_wqe_desc_t *wqed);
32 static int oce_map_wqe(struct oce_wq *wq, oce_wqe_desc_t *wqed,
34 static int oce_bcopy_wqe(struct oce_wq *wq, oce_wqe_desc_t *wqed, mblk_t *mp,
36 static void oce_wqb_dtor(struct oce_wq *wq, oce_wq_bdesc_t *wqbd);
37 static int oce_wqb_ctor(oce_wq_bdesc_t *wqbd, struct oce_wq *wq,
39 static inline oce_wq_bdesc_t *oce_wqb_alloc(struct oce_wq *wq);
40 static void oce_wqb_free(struct oce_wq *wq, oce_wq_bdesc_t *wqbd);
42 static void oce_wqmd_free(struct oce_wq *wq, oce_wq_mdesc_t *wqmd);
43 static void oce_wqm_free(struct oce_wq *wq, oce_wq_mdesc_t *wqmd);
44 static oce_wq_mdesc_t *oce_wqm_alloc(struct oce_wq *wq);
[all …]
H A Doce_queue.c53 static void oce_wq_fini(struct oce_dev *dev, struct oce_wq *wq);
54 static int oce_wq_create(struct oce_wq *wq, struct oce_eq *eq);
55 static void oce_wq_del(struct oce_dev *dev, struct oce_wq *wq);
458 struct oce_wq *wq; in oce_wq_init() local
473 wq = kmem_zalloc(sizeof (struct oce_wq), KM_NOSLEEP); in oce_wq_init()
474 if (wq == NULL) { in oce_wq_init()
481 wq->cfg.q_len = q_len; in oce_wq_init()
482 wq->cfg.wq_type = (uint8_t)wq_type; in oce_wq_init()
483 wq->cfg.eqd = OCE_DEFAULT_WQ_EQD; in oce_wq_init()
484 wq->cfg.nbufs = 2 * wq->cfg.q_len; in oce_wq_init()
[all …]
H A Doce_gld.c103 (void) oce_start_wq(dev->wq[qidx]); in oce_start()
145 mutex_enter(&dev->wq[qidx]->tx_lock); in oce_stop()
150 oce_clean_wq(dev->wq[qidx]); in oce_stop()
154 mutex_exit(&dev->wq[qidx]->tx_lock); in oce_stop()
287 struct oce_wq *wq; in oce_m_send() local
299 wq = oce_get_wq(dev, mp); in oce_m_send()
306 rmp = oce_send_packet(wq, mp); in oce_m_send()
309 wq->resched = B_TRUE; in oce_m_send()
310 oce_arm_cq(dev, wq->cq->cq_id, 0, B_TRUE); in oce_m_send()
573 oce_m_ioctl(void *arg, queue_t *wq, mblk_t *mp) in oce_m_ioctl() argument
[all …]
/illumos-gate/usr/src/uts/common/io/ib/clients/rdsv3/
H A Drdsv3_impl.c525 rdsv3_workqueue_struct_t *wq = arg; in rdsv3_worker_thread() local
528 RDSV3_DPRINTF4("rdsv3_worker_thread", "Enter(wq: 0x%p)", wq); in rdsv3_worker_thread()
530 mutex_enter(&wq->wq_lock); in rdsv3_worker_thread()
531 work = list_remove_head(&wq->wq_queue); in rdsv3_worker_thread()
533 mutex_exit(&wq->wq_lock); in rdsv3_worker_thread()
538 mutex_enter(&wq->wq_lock); in rdsv3_worker_thread()
539 work = list_remove_head(&wq->wq_queue); in rdsv3_worker_thread()
543 if (wq->wq_state != RDSV3_WQ_THREAD_EXITING) { in rdsv3_worker_thread()
544 wq->wq_state = RDSV3_WQ_THREAD_IDLE; in rdsv3_worker_thread()
546 mutex_exit(&wq->wq_lock); in rdsv3_worker_thread()
[all …]
/illumos-gate/usr/src/uts/common/io/
H A Dbufmod.c280 sbioc(queue_t *wq, mblk_t *mp) in sbioc() argument
283 struct sb *sbp = (struct sb *)wq->q_ptr; in sbioc()
294 miocack(wq, mp, 0, 0); in sbioc()
304 miocnak(wq, mp, 0, EINVAL); in sbioc()
316 miocnak(wq, mp, 0, EINVAL); in sbioc()
324 miocack(wq, mp, 0, 0); in sbioc()
345 qreply(wq, mop); in sbioc()
349 miocack(wq, mp, 0, 0); in sbioc()
355 miocack(wq, mp, 0, 0); in sbioc()
386 qreply(wq, mop); in sbioc()
[all …]
H A Dtl.c1604 queue_t *wq = tep->te_wq; in tl_close() local
1607 ASSERT(wq == WR(rq)); in tl_close()
1700 rq->q_ptr = wq->q_ptr = NULL; in tl_close()
1795 tl_wput(queue_t *wq, mblk_t *mp) in tl_wput() argument
1797 tl_endpt_t *tep = (tl_endpt_t *)wq->q_ptr; in tl_wput()
1809 tl_merror(wq, mp, EPROTO); in tl_wput()
1827 miocnak(wq, mp, 0, EINVAL); in tl_wput()
1837 flushq(wq, FLUSHALL); in tl_wput()
1841 flushq(RD(wq), FLUSHALL); in tl_wput()
1842 qreply(wq, mp); in tl_wput()
[all …]
H A Dsundlpi.c43 queue_t *wq, in dlbindack() argument
55 if ((mp = mexchange(wq, mp, size, M_PCPROTO, DL_BIND_ACK)) == NULL) in dlbindack()
66 qreply(wq, mp); in dlbindack()
71 queue_t *wq, in dlokack() argument
77 if ((mp = mexchange(wq, mp, sizeof (dl_ok_ack_t), M_PCPROTO, in dlokack()
82 qreply(wq, mp); in dlokack()
87 queue_t *wq, in dlerrorack() argument
95 if ((mp = mexchange(wq, mp, sizeof (dl_error_ack_t), M_PCPROTO, in dlerrorack()
102 qreply(wq, mp); in dlerrorack()
107 queue_t *wq, in dluderrorind() argument
[all …]
H A Dpfmod.c88 static void pfioctl(queue_t *wq, mblk_t *mp);
207 pfwput(queue_t *wq, mblk_t *mp) in pfwput() argument
211 pfioctl(wq, mp); in pfwput()
215 putnext(wq, mp); in pfwput()
335 pfioctl(queue_t *wq, mblk_t *mp) in pfioctl() argument
337 struct epacketfilt *pfp = (struct epacketfilt *)wq->q_ptr; in pfioctl()
360 miocnak(wq, mp, 0, error); in pfioctl()
365 miocnak(wq, mp, 0, EINVAL); in pfioctl()
376 miocnak(wq, mp, 0, error); in pfioctl()
382 miocnak(wq, mp, 0, EINVAL); in pfioctl()
[all …]
H A Dstrsun.c43 merror(queue_t *wq, mblk_t *mp, int error) in merror() argument
45 if ((mp = mexchange(wq, mp, 1, M_ERROR, -1)) == NULL) in merror()
49 qreply(wq, mp); in merror()
70 miocack(queue_t *wq, mblk_t *mp, int count, int rval) in miocack() argument
78 qreply(wq, mp); in miocack()
82 miocnak(queue_t *wq, mblk_t *mp, int count, int error) in miocnak() argument
89 qreply(wq, mp); in miocnak()
93 mexchange(queue_t *wq, mblk_t *mp, size_t size, uchar_t type, int32_t primtype) in mexchange() argument
98 if (wq != NULL) { in mexchange()
100 merror(wq, mp, ENOSR); in mexchange()
/illumos-gate/usr/src/uts/common/io/mlxcx/
H A Dmlxcx_ring.c397 mlxcx_work_queue_t *wq) in mlxcx_rq_setup() argument
399 mutex_init(&wq->mlwq_mtx, NULL, MUTEX_DRIVER, in mlxcx_rq_setup()
402 list_insert_tail(&mlxp->mlx_wqs, wq); in mlxcx_rq_setup()
404 mutex_enter(&wq->mlwq_mtx); in mlxcx_rq_setup()
406 wq->mlwq_mlx = mlxp; in mlxcx_rq_setup()
407 wq->mlwq_type = MLXCX_WQ_TYPE_RECVQ; in mlxcx_rq_setup()
408 wq->mlwq_cq = cq; in mlxcx_rq_setup()
409 wq->mlwq_pd = &mlxp->mlx_pd; in mlxcx_rq_setup()
410 wq->mlwq_uar = &mlxp->mlx_uar; in mlxcx_rq_setup()
412 wq->mlwq_bufs = mlxcx_mlbs_create(mlxp); in mlxcx_rq_setup()
[all …]
H A Dmlxcx_gld.c473 mlxcx_work_queue_t *wq = (mlxcx_work_queue_t *)rh; in mlxcx_mac_ring_stat() local
474 (void) wq; in mlxcx_mac_ring_stat()
809 mlxcx_work_queue_t *wq = (mlxcx_work_queue_t *)rh; in mlxcx_mac_ring_start() local
810 mlxcx_completion_queue_t *cq = wq->mlwq_cq; in mlxcx_mac_ring_start()
811 mlxcx_ring_group_t *g = wq->mlwq_group; in mlxcx_mac_ring_start()
812 mlxcx_t *mlxp = wq->mlwq_mlx; in mlxcx_mac_ring_start()
817 ASSERT(wq->mlwq_type == MLXCX_WQ_TYPE_SENDQ || in mlxcx_mac_ring_start()
818 wq->mlwq_type == MLXCX_WQ_TYPE_RECVQ); in mlxcx_mac_ring_start()
819 if (wq->mlwq_type == MLXCX_WQ_TYPE_SENDQ && in mlxcx_mac_ring_start()
820 !mlxcx_tx_ring_start(mlxp, g, wq)) in mlxcx_mac_ring_start()
[all …]
/illumos-gate/usr/src/uts/common/rpc/
H A Dsvc_gen.c110 queue_t *wq; in svc_tli_kcreate() local
130 wq = fp->f_vnode->v_stream->sd_wrq; in svc_tli_kcreate()
131 while ((wq = wq->q_next) != NULL) { in svc_tli_kcreate()
132 if (strcmp(wq->q_qinfo->qi_minfo->mi_idname, "rpcmod") == 0) in svc_tli_kcreate()
135 if (!wq) { in svc_tli_kcreate()
191 xprt->xp_wq = wq; in svc_tli_kcreate()
225 vp = (void **)wq->q_ptr; in svc_tli_kcreate()
235 create_putlocks(wq, 1); in svc_tli_kcreate()
H A Drpcmod.c1012 static void mir_svc_start(queue_t *wq);
1995 mir_svc_start_close(queue_t *wq, mir_t *mir) in mir_svc_start_close() argument
1998 ASSERT((wq->q_flag & QREADR) == 0); in mir_svc_start_close()
2013 qenable(RD(wq)); in mir_svc_start_close()
2019 qenable(wq); in mir_svc_start_close()
2023 mir_svc_hold(queue_t *wq) in mir_svc_hold() argument
2025 mir_t *mir = (mir_t *)wq->q_ptr; in mir_svc_hold()
2037 mir_svc_release(queue_t *wq, mblk_t *mp, bool_t enable) in mir_svc_release() argument
2039 mir_t *mir = (mir_t *)wq->q_ptr; in mir_svc_release()
2042 ASSERT((wq->q_flag & QREADR) == 0); in mir_svc_release()
[all …]
/illumos-gate/usr/src/uts/common/io/hxge/
H A Dhxge_hw.c471 hxge_hw_ioctl(p_hxge_t hxgep, queue_t *wq, mblk_t *mp, struct iocblk *iocp) in hxge_hw_ioctl() argument
478 miocnak(wq, mp, 0, EINVAL); in hxge_hw_ioctl()
487 miocnak(wq, mp, 0, EINVAL); in hxge_hw_ioctl()
492 miocack(wq, mp, 0, 0); in hxge_hw_ioctl()
497 miocack(wq, mp, 0, 0); in hxge_hw_ioctl()
501 hxge_rtrace_ioctl(hxgep, wq, mp, iocp); in hxge_hw_ioctl()
510 hxge_loopback_ioctl(p_hxge_t hxgep, queue_t *wq, mblk_t *mp, in hxge_loopback_ioctl() argument
518 miocnak(wq, mp, 0, EINVAL); in hxge_loopback_ioctl()
527 miocack(wq, mp, sizeof (hxge_lb_t), 0); in hxge_loopback_ioctl()
529 miocnak(wq, mp, 0, EINVAL); in hxge_loopback_ioctl()
[all …]
/illumos-gate/usr/src/lib/udapl/udapl_tavor/tavor/
H A Ddapl_tavor_wr.c62 dapls_tavor_workq_hdr_t *wq; in dapls_tavor_wrid_get_entry() local
72 wq = dapli_tavor_wrid_wqhdr_find(cq, qpnum, send_or_recv); in dapls_tavor_wrid_get_entry()
74 dapl_os_assert(wq != NULL); in dapls_tavor_wrid_get_entry()
86 dapl_os_lock(&wq->wq_wrid_lock->wrl_lock); in dapls_tavor_wrid_get_entry()
87 wre_tmp = dapli_tavor_wrid_find_match(wq, cqe); in dapls_tavor_wrid_get_entry()
107 wre->wr_wqeaddrsz = dapli_tavor_wrid_get_wqeaddrsz(wq); in dapls_tavor_wrid_get_entry()
113 dapl_os_unlock(&wq->wq_wrid_lock->wrl_lock); in dapls_tavor_wrid_get_entry()
124 dapli_tavor_wrid_find_match(dapls_tavor_workq_hdr_t *wq, tavor_hw_cqe_t *cqe) in dapli_tavor_wrid_find_match() argument
148 container = wq->wq_wrid_poll; in dapli_tavor_wrid_find_match()
152 last_container = (container != wq->wq_wrid_post) ? 0 : 1; in dapli_tavor_wrid_find_match()
[all …]
/illumos-gate/usr/src/uts/common/io/softmac/
H A Dsoftmac_dev.c397 softmac_mod_wput(queue_t *wq, mblk_t *mp) in softmac_mod_wput() argument
402 ASSERT(wq->q_next != NULL); in softmac_mod_wput()
410 softmac_lower_t *slp = wq->q_ptr; in softmac_mod_wput()
414 miocnak(wq, mp, 0, EINVAL); in softmac_mod_wput()
425 miocack(wq, mp, sizeof (*arg), 0); in softmac_mod_wput()
429 miocnak(wq, mp, 0, EINVAL); in softmac_mod_wput()
442 softmac_mod_wsrv(queue_t *wq) in softmac_mod_wsrv() argument
444 softmac_lower_t *slp = wq->q_ptr; in softmac_mod_wsrv()
449 ASSERT(wq->q_next != NULL); in softmac_mod_wsrv()
620 softmac_drv_wput(queue_t *wq, mblk_t *mp) in softmac_drv_wput() argument
[all …]
H A Dsoftmac_pkt.c33 queue_t *wq = ((softmac_t *)arg)->smac_lower->sl_wq; in softmac_m_tx() local
39 if (!SOFTMAC_CANPUTNEXT(wq)) in softmac_m_tx()
43 putnext(wq, mp); in softmac_m_tx()
50 if (!SOFTMAC_CANPUTNEXT(wq)) in softmac_m_tx()
54 putnext(wq, mp); in softmac_m_tx()
/illumos-gate/usr/src/uts/common/io/ib/adapters/hermon/
H A Dhermon_wr.c77 hermon_workq_hdr_t *wq; in hermon_post_send_ud() local
108 wq = qp->qp_sq_wqhdr; in hermon_post_send_ud()
109 qsize_msk = wq->wq_mask; in hermon_post_send_ud()
113 tail = wq->wq_tail; in hermon_post_send_ud()
114 head = wq->wq_head; in hermon_post_send_ud()
124 if (wq->wq_full != 0) { in hermon_post_send_ud()
131 wq->wq_full = 1; in hermon_post_send_ud()
363 wq->wq_wrid[tail] = wr->wr_id; in hermon_post_send_ud()
368 wq->wq_tail = tail; in hermon_post_send_ud()
430 hermon_workq_hdr_t *wq; in hermon_post_send_rc() local
[all …]
/illumos-gate/usr/src/uts/common/io/audio/impl/
H A Daudio_sun.c626 devaudio_ioc_getinfo(queue_t *wq, audio_client_t *c, mblk_t *mp) in devaudio_ioc_getinfo() argument
633 miocnak(wq, mp, 0, ENOMEM); in devaudio_ioc_getinfo()
645 qreply(wq, mp); in devaudio_ioc_getinfo()
654 devaudio_ioc_setinfo(queue_t *wq, audio_client_t *c, mblk_t *mp) in devaudio_ioc_setinfo() argument
681 qreply(wq, mp); in devaudio_ioc_setinfo()
688 miocnak(wq, mp, 0, EINVAL); in devaudio_ioc_setinfo()
934 qreply(wq, mp); in devaudio_ioc_setinfo()
939 miocnak(wq, mp, 0, rv); in devaudio_ioc_setinfo()
943 devaudio_ioc_getdev(queue_t *wq, audio_client_t *c, mblk_t *mp) in devaudio_ioc_getdev() argument
950 miocnak(wq, mp, 0, ENOMEM); in devaudio_ioc_getdev()
[all …]
/illumos-gate/usr/src/uts/sun4u/opl/io/
H A Ddm2s.c114 int dm2s_wput(queue_t *wq, mblk_t *mp);
116 int dm2s_wsrv(queue_t *wq);
121 void dm2s_start(queue_t *wq, dm2s_t *dm2sp);
123 int dm2s_transmit(queue_t *wq, mblk_t *mp, target_id_t target, mkey_t key);
533 dm2s_wsrv(queue_t *wq) in dm2s_wsrv() argument
535 dm2s_t *dm2sp = (dm2s_t *)wq->q_ptr; in dm2s_wsrv()
546 dm2s_start(wq, dm2sp); in dm2s_wsrv()
560 dm2s_wput(queue_t *wq, mblk_t *mp) in dm2s_wput() argument
562 dm2s_t *dm2sp = (dm2s_t *)wq->q_ptr; in dm2s_wput()
587 (void) putq(wq, mp); in dm2s_wput()
[all …]
/illumos-gate/usr/src/uts/common/io/fibre-channel/ulp/
H A Dfcip.c139 static int fcip_open(queue_t *wq, dev_t *devp, int flag,
142 static int fcip_start(queue_t *wq, mblk_t *mp, struct fcip *fptr,
156 static void fcip_spareq(queue_t *wq, mblk_t *mp);
157 static void fcip_pareq(queue_t *wq, mblk_t *mp);
158 static void fcip_ubreq(queue_t *wq, mblk_t *mp);
159 static void fcip_breq(queue_t *wq, mblk_t *mp);
160 static void fcip_dreq(queue_t *wq, mblk_t *mp);
161 static void fcip_areq(queue_t *wq, mblk_t *mp);
162 static void fcip_udreq(queue_t *wq, mblk_t *mp);
163 static void fcip_ireq(queue_t *wq, mblk_t *mp);
[all …]
/illumos-gate/usr/src/uts/common/io/nxge/
H A Dnxge_hw.c585 nxge_hw_ioctl(p_nxge_t nxgep, queue_t *wq, mblk_t *mp, struct iocblk *iocp) in nxge_hw_ioctl() argument
592 miocnak(wq, mp, 0, EINVAL); in nxge_hw_ioctl()
600 miocnak(wq, mp, 0, EINVAL); in nxge_hw_ioctl()
605 miocack(wq, mp, sizeof (uint16_t), 0); in nxge_hw_ioctl()
610 miocack(wq, mp, 0, 0); in nxge_hw_ioctl()
615 miocack(wq, mp, sizeof (uint32_t), 0); in nxge_hw_ioctl()
620 miocack(wq, mp, 0, 0); in nxge_hw_ioctl()
625 miocack(wq, mp, 0, 0); in nxge_hw_ioctl()
630 miocack(wq, mp, 0, 0); in nxge_hw_ioctl()
635 miocack(wq, mp, 0, 0); in nxge_hw_ioctl()
[all …]
/illumos-gate/usr/src/uts/common/io/ib/adapters/tavor/
H A Dtavor_wr.c73 static tavor_wrid_entry_t *tavor_wrid_find_match(tavor_workq_hdr_t *wq,
75 static void tavor_wrid_reaplist_add(tavor_cqhdl_t cq, tavor_workq_hdr_t *wq);
80 static uint32_t tavor_wrid_get_wqeaddrsz(tavor_workq_hdr_t *wq);
85 static tavor_workq_hdr_t *tavor_wrid_list_reap(tavor_wrid_list_hdr_t *wq);
2508 tavor_wrid_add_entry(tavor_workq_hdr_t *wq, uint64_t wrid, uint32_t wqeaddrsz, in tavor_wrid_add_entry() argument
2514 ASSERT(MUTEX_HELD(&wq->wq_wrid_wql->wql_lock)); in tavor_wrid_add_entry()
2522 head = wq->wq_wrid_post->wl_head; in tavor_wrid_add_entry()
2523 tail = wq->wq_wrid_post->wl_tail; in tavor_wrid_add_entry()
2524 size = wq->wq_wrid_post->wl_size; in tavor_wrid_add_entry()
2525 wre_tmp = &wq->wq_wrid_post->wl_wre[tail]; in tavor_wrid_add_entry()
[all …]
/illumos-gate/usr/src/uts/common/sys/fibre-channel/fca/oce/
H A Doce_buf.h126 struct oce_wq *wq; member
181 int oce_wqb_cache_create(struct oce_wq *wq, size_t buf_size);
182 void oce_wqb_cache_destroy(struct oce_wq *wq);
184 void oce_wqm_cache_destroy(struct oce_wq *wq);
185 int oce_wqm_cache_create(struct oce_wq *wq);

123456