/illumos-gate/usr/src/uts/common/io/ib/adapters/tavor/ |
H A D | tavor_srq.c | 65 tavor_srqhdl_t srq; in tavor_srq_alloc() local 371 srq->srq_uarpg = (srq->srq_is_umap) ? uarpg : 0; in tavor_srq_alloc() 381 srq->srq_real_sizes.srq_sgl_sz = srq->srq_wq_sgl; in tavor_srq_alloc() 384 srq->srq_sync = TAVOR_SRQ_IS_SYNC_REQ(state, srq->srq_wqinfo); in tavor_srq_alloc() 403 tavor_wrid_list_srq_init(srq->srq_wridlist, srq, 0); in tavor_srq_alloc() 407 *srqhdl = srq; in tavor_srq_alloc() 415 kmem_free(srq->srq_wridlist->wl_wre, srq->srq_wridlist->wl_size * in tavor_srq_alloc() 467 srq = *srqhdl; in tavor_srq_free() 866 srq->srq_wridlist->wl_size = srq->srq_wq_bufsz; in tavor_srq_modify() 869 tavor_wrid_list_srq_init(srq->srq_wridlist, srq, in tavor_srq_modify() [all …]
|
H A D | tavor_wr.c | 70 tavor_srqhdl_t srq); 638 if (srq->srq_is_umap) { in tavor_post_srq() 645 mutex_enter(&srq->srq_lock); in tavor_post_srq() 651 mutex_exit(&srq->srq_lock); in tavor_post_srq() 682 prev = TAVOR_SRQ_WQE_ADDR(srq, srq->srq_wq_lastwqeindx); in tavor_post_srq() 819 srq->srq_wq_buf, desc, in tavor_post_srq() 839 mutex_exit(&srq->srq_lock); in tavor_post_srq() 1877 tavor_srqhdl_t srq) in tavor_wqe_srq_linknext() argument 1895 srq->srq_desc_off); in tavor_wqe_srq_linknext() 1966 tavor_srqhdl_t srq; in tavor_wqe_sync() local [all …]
|
H A D | tavor_umap.c | 326 tavor_srqhdl_t srq; in tavor_umap_srqmem() local 373 tavor_srqhdl_t srq; in tavor_devmap_umem_map() local 469 mutex_enter(&srq->srq_lock); in tavor_devmap_umem_map() 471 srq->srq_umap_dhp = dhp; in tavor_devmap_umem_map() 473 mutex_exit(&srq->srq_lock); in tavor_devmap_umem_map() 475 mutex_exit(&srq->srq_lock); in tavor_devmap_umem_map() 571 tavor_srqhdl_t srq; in tavor_devmap_umem_unmap() local 735 mutex_enter(&srq->srq_lock); in tavor_devmap_umem_unmap() 739 mutex_exit(&srq->srq_lock); in tavor_devmap_umem_unmap() 1181 if (srq == NULL) { in tavor_umap_srq_data_out() [all …]
|
H A D | tavor_ci.c | 2295 tavor_ci_free_srq(ibc_hca_hdl_t hca, ibc_srq_hdl_t srq) in tavor_ci_free_srq() argument 2314 if (srq == NULL) { in tavor_ci_free_srq() 2318 srqhdl = (tavor_srqhdl_t)srq; in tavor_ci_free_srq() 2354 if (srq == NULL) { in tavor_ci_query_srq() 2358 srqhdl = (tavor_srqhdl_t)srq; in tavor_ci_query_srq() 2382 tavor_ci_modify_srq(ibc_hca_hdl_t hca, ibc_srq_hdl_t srq, in tavor_ci_modify_srq() argument 2403 if (srq == NULL) { in tavor_ci_modify_srq() 2407 srqhdl = (tavor_srqhdl_t)srq; in tavor_ci_modify_srq() 2481 tavor_ci_post_srq(ibc_hca_hdl_t hca, ibc_srq_hdl_t srq, in tavor_ci_post_srq() argument 2501 if (srq == NULL) { in tavor_ci_post_srq() [all …]
|
/illumos-gate/usr/src/uts/common/io/ib/adapters/hermon/ |
H A D | hermon_srq.c | 64 hermon_srqhdl_t srq; in hermon_srq_alloc() local 164 &srq->srq_wq_vdbr, &srq->srq_wq_pdbr, &srq->srq_rdbr_mapoffset); in hermon_srq_alloc() 376 srq->srq_real_sizes.srq_sgl_sz = srq->srq_wq_sgl; in hermon_srq_alloc() 407 *srqhdl = srq; in hermon_srq_alloc() 465 srq = *srqhdl; in hermon_srq_free() 469 pd = srq->srq_pdhdl; in hermon_srq_free() 470 mr = srq->srq_mrhdl; in hermon_srq_free() 562 hermon_dbr_free(state, srq->srq_uarpg, srq->srq_wq_vdbr); in hermon_srq_free() 849 if ((srq->srq_is_umap) && (srq->srq_umap_dhp != NULL)) { in hermon_srq_modify() 910 srq->srq_refcnt++; in hermon_srq_refcnt_inc() [all …]
|
H A D | hermon_umap.c | 373 hermon_srqhdl_t srq; in hermon_umap_srqmem() local 462 hermon_srqhdl_t srq; in hermon_devmap_umem_map() local 564 mutex_enter(&srq->srq_lock); in hermon_devmap_umem_map() 566 srq->srq_umap_dhp = dhp; in hermon_devmap_umem_map() 666 hermon_srqhdl_t srq; in hermon_devmap_umem_unmap() local 846 srq->srq_umap_dhp = NULL; in hermon_devmap_umem_unmap() 867 hermon_srqhdl_t srq; in hermon_devmap_dbrecmem_map() local 965 srq->srq_umap_dhp = dhp; in hermon_devmap_dbrecmem_map() 1065 hermon_srqhdl_t srq; in hermon_devmap_dbrecmem_unmap() local 1706 if (srq == NULL) { in hermon_umap_srq_data_out() [all …]
|
H A D | hermon_wr.c | 1231 mutex_enter(&srq->srq_lock); in hermon_post_srq() 1238 if (srq->srq_is_umap) { in hermon_post_srq() 1239 mutex_exit(&srq->srq_lock); in hermon_post_srq() 1247 mutex_exit(&srq->srq_lock); in hermon_post_srq() 1253 wq = srq->srq_wq_wqhdr; in hermon_post_srq() 1291 mutex_exit(&srq->srq_lock); in hermon_post_srq() 2014 if (num_ds < srq->srq_wq_sgl) { in hermon_wqe_srq_build() 2390 struct hermon_sw_srq_s *srq; in hermon_wrid_get_entry() local 2394 srq = wqa->wqa_srq; in hermon_wrid_get_entry() 2395 mutex_enter(&srq->srq_lock); in hermon_wrid_get_entry() [all …]
|
H A D | hermon_qp.c | 78 hermon_srqhdl_t srq; in hermon_qp_alloc() local 180 srq = (hermon_srqhdl_t)attr_p->qp_ibc_srq_hdl; in hermon_qp_alloc() 517 qp->qp_rq_wqavl.wqa_wq = srq->srq_wq_wqhdr; in hermon_qp_alloc() 519 qp->qp_rq_wqavl.wqa_srq = srq; in hermon_qp_alloc() 642 qp->qp_srqhdl = srq; in hermon_qp_alloc() 1238 hermon_srqhdl_t srq; in hermon_qp_alloc_range() local 1628 qp->qp_rq_wqavl.wqa_srq = srq; in hermon_qp_alloc_range() 1743 qp->qp_srqhdl = srq; in hermon_qp_alloc_range() 1869 hermon_srqhdl_t srq; in hermon_qp_free() local 1887 srq = qp->qp_srqhdl; in hermon_qp_free() [all …]
|
/illumos-gate/usr/src/uts/common/fs/smbsrv/ |
H A D | smb_kutil.c | 1750 bzero(srq, sizeof (*srq)); in smb_srqueue_init() 1752 srq->srq_wlastupdate = srq->srq_rlastupdate = gethrtime_unscaled(); in smb_srqueue_init() 1778 wcnt = srq->srq_wcnt++; in smb_srqueue_waitq_enter() 1781 srq->srq_wtime += delta; in smb_srqueue_waitq_enter() 1800 rcnt = srq->srq_rcnt--; in smb_srqueue_runq_exit() 1803 srq->srq_rtime += delta; in smb_srqueue_runq_exit() 1822 wcnt = srq->srq_wcnt--; in smb_srqueue_waitq_to_runq() 1825 srq->srq_wtime += delta; in smb_srqueue_waitq_to_runq() 1828 rcnt = srq->srq_rcnt++; in smb_srqueue_waitq_to_runq() 1852 srq->srq_wlentime += delta * srq->srq_wcnt; in smb_srqueue_update() [all …]
|
/illumos-gate/usr/src/lib/udapl/udapl_tavor/tavor/ |
H A D | dapl_arbel_hw.c | 536 if (num_ds < srq->srq_wq_sgl) { in dapli_arbel_wqe_srq_build() 1289 ib_srq_handle_t srq; in dapli_arbel_post_srq() local 1297 srq = srqp->srq_handle; in dapli_arbel_post_srq() 1328 srq->srq_wq_wqesz); in dapli_arbel_post_srq() 1354 srq->srq_wq_lastwqeindex); in dapli_arbel_post_srq() 1372 srq->srq_counter++; in dapli_arbel_post_srq() 1373 (srq->srq_dbp)[0] = HTOBE_32(srq->srq_counter); in dapli_arbel_post_srq() 1603 (srq->srq_dbp)[1] = in dapli_arbel_srq_init() 1607 dapli_arbel_rq_prelink(srq->srq_addr, srq->srq_wq_desc_addr, in dapli_arbel_srq_init() 1608 srq->srq_wq_wqesz, srq->srq_wq_numwqe, 0); in dapli_arbel_srq_init() [all …]
|
H A D | dapl_hermon_hw.c | 513 if (num_ds < srq->srq_wq_sgl) { in dapli_hermon_wqe_srq_build() 1344 ib_srq_handle_t srq; in dapli_hermon_post_srq() local 1352 srq = srqp->srq_handle; in dapli_hermon_post_srq() 1383 srq->srq_wq_wqesz); in dapli_hermon_post_srq() 1409 srq->srq_wq_lastwqeindex); in dapli_hermon_post_srq() 1424 srq->srq_wridlist->wl_size); in dapli_hermon_post_srq() 1427 srq->srq_counter++; in dapli_hermon_post_srq() 1428 (srq->srq_dbp)[0] = HTOBE_32(srq->srq_counter); in dapli_hermon_post_srq() 1641 dapli_hermon_rq_prelink(srq->srq_addr, srq->srq_wq_desc_addr, in dapli_hermon_srq_init() 1642 srq->srq_wq_wqesz, srq->srq_wq_numwqe, 0); in dapli_hermon_srq_init() [all …]
|
H A D | dapl_tavor_hw.c | 682 if (wr->wr_nds > srq->srq_wq_sgl) { in dapli_tavor_wqe_srq_build() 715 if (num_ds < srq->srq_wq_sgl) { in dapli_tavor_wqe_srq_build() 1550 ib_srq_handle_t srq; in dapli_tavor_post_srq() local 1559 srq = srqp->srq_handle; in dapli_tavor_post_srq() 1590 srq->srq_wq_wqesz); in dapli_tavor_post_srq() 1611 if (srq->srq_wq_lastwqeindex == -1) { in dapli_tavor_post_srq() 1615 srq->srq_wq_lastwqeindex); in dapli_tavor_post_srq() 1624 srq->srq_wq_lastwqeindex = wqe_index; in dapli_tavor_post_srq() 1626 srq->srq_wridlist->wl_freel_entries--; in dapli_tavor_post_srq() 1628 srq->srq_wridlist->wl_size); in dapli_tavor_post_srq() [all …]
|
H A D | dapl_tavor_hw.h | 558 #define TAVOR_SRQ_RQ_ENTRY(srq, tail) \ argument 559 ((uint64_t *)((uintptr_t)((srq)->srq_wq_buf) + \ 560 ((tail) * (srq)->srq_wq_wqesz))) 561 #define TAVOR_SRQ_RQ_DESC(srq, tail) \ argument 562 ((uint32_t)((srq)->srq_wq_desc_addr + \ 563 ((tail) * (srq)->srq_wq_wqesz))) 566 #define TAVOR_SRQ_WQ_ENTRY(srq, index) \ argument 567 ((uint64_t *)(((uintptr_t)(srq)->srq_addr) + \ 568 ((index) * (srq)->srq_wq_wqesz)))
|
H A D | dapl_tavor_wr.c | 665 dapls_tavor_srq_wrid_init(ib_srq_handle_t srq) in dapls_tavor_srq_wrid_init() argument 674 srq->srq_wridlist = NULL; in dapls_tavor_srq_wrid_init() 679 wridlist->wl_free_list[0] = srq->srq_wq_desc_addr; in dapls_tavor_srq_wrid_init() 680 for (i = 1; i < srq->srq_wq_numwqe; i++) { in dapls_tavor_srq_wrid_init() 682 srq->srq_wq_wqesz; in dapls_tavor_srq_wrid_init() 684 wridlist->wl_srq_wqesz = srq->srq_wq_wqesz; in dapls_tavor_srq_wrid_init() 685 wridlist->wl_srq_desc_addr = srq->srq_wq_desc_addr; in dapls_tavor_srq_wrid_init() 687 srq->srq_wridlist = wridlist; in dapls_tavor_srq_wrid_init() 692 dapls_tavor_srq_wrid_free(ib_srq_handle_t srq) in dapls_tavor_srq_wrid_free() argument 697 wridlist = srq->srq_wridlist; in dapls_tavor_srq_wrid_free() [all …]
|
/illumos-gate/usr/src/lib/udapl/libdat/include/dat/ |
H A D | dat_redirection.h | 163 (srq),\ 377 (srq)) 379 #define DAT_SRQ_SET_LW(srq, lw) \ argument 381 (srq),\ 384 #define DAT_SRQ_FREE(srq) \ argument 386 (srq)) 388 #define DAT_SRQ_QUERY(srq, mask, param) \ argument 390 (srq),\ 394 #define DAT_SRQ_RESIZE(srq, qsize) \ argument 396 (srq),\ [all …]
|
/illumos-gate/usr/src/uts/common/sys/ib/adapters/tavor/ |
H A D | tavor_wr.h | 66 #define TAVOR_SRQ_WQ_ENTRY(srq, tail) \ argument 67 ((uint64_t *)((uintptr_t)((srq)->srq_wq_buf) + \ 68 ((tail) << (srq)->srq_wq_log_wqesz))) 79 #define TAVOR_SRQ_WQE_ADDR(srq, wqe_index) \ argument 80 ((uint64_t *)((uintptr_t)srq->srq_wq_buf + \ 81 (wqe_index << srq->srq_wq_log_wqesz))) 301 void tavor_wrid_add_entry_srq(tavor_srqhdl_t srq, uint64_t wrid, 308 tavor_srqhdl_t srq, uint_t wq_start);
|
H A D | tavor_srq.h | 214 int tavor_srq_modify(tavor_state_t *state, tavor_srqhdl_t srq, 216 int tavor_srq_post(tavor_state_t *state, tavor_srqhdl_t srq, 218 void tavor_srq_refcnt_inc(tavor_srqhdl_t srq); 219 void tavor_srq_refcnt_dec(tavor_srqhdl_t srq);
|
H A D | tavor_hw.h | 179 uint32_t srq :1; member 298 uint32_t srq :1; member 1556 uint32_t srq :1; member 1565 uint32_t srq :1; member 2472 #define TAVOR_WQE_BUILD_DATA_SEG_SRQ(srq, ds, sgl) \ argument 2477 ddi_put64((srq)->srq_wqinfo.qa_acchdl, &tmp[0], \ 2480 ddi_put64((srq)->srq_wqinfo.qa_acchdl, &tmp[1], (sgl)->ds_va); \ 2512 #define TAVOR_WQE_LINKNEXT_SRQ(srq, prev, ctrl, next) \ argument 2514 ddi_put64((srq)->srq_wqinfo.qa_acchdl, &((uint64_t *)(prev))[1],\ 2516 ddi_put64((srq)->srq_wqinfo.qa_acchdl, &((uint64_t *)(prev))[0],\
|
/illumos-gate/usr/src/uts/common/io/scsi/impl/ |
H A D | smp_transport.c | 60 smp_request_frame_t *srq; in smp_probe() local 68 srq = (smp_request_frame_t *)srq_buf; in smp_probe() 69 bzero(srq, sizeof (srq_buf)); in smp_probe() 70 srq->srf_frame_type = SMP_FRAME_TYPE_REQUEST; in smp_probe() 71 srq->srf_function = SMP_FUNC_REPORT_MANUFACTURER_INFO; in smp_probe() 76 smp_pkt->smp_pkt_req = (caddr_t)srq; in smp_probe()
|
/illumos-gate/usr/src/uts/common/sys/ib/adapters/hermon/ |
H A D | hermon_wr.h | 77 #define HERMON_SRQ_WQ_ENTRY(srq, tail) \ argument 78 ((uint64_t *)((uintptr_t)((srq)->srq_wq_buf) + \ 79 ((tail) << (srq)->srq_wq_log_wqesz))) 95 #define HERMON_SRQ_WQE_ADDR(srq, wqe_index) \ argument 96 ((uint64_t *)((uintptr_t)srq->srq_wq_buf + \ 97 (wqe_index << srq->srq_wq_log_wqesz)))
|
H A D | hermon_srq.h | 169 int hermon_srq_modify(hermon_state_t *state, hermon_srqhdl_t srq, 171 int hermon_srq_post(hermon_state_t *state, hermon_srqhdl_t srq, 173 void hermon_srq_refcnt_inc(hermon_srqhdl_t srq); 174 void hermon_srq_refcnt_dec(hermon_srqhdl_t srq);
|
/illumos-gate/usr/src/uts/common/io/ib/ibtl/ |
H A D | ibtl_srq.c | 193 ibt_post_srq(ibt_srq_hdl_t srq, ibt_recv_wr_t *wr_list, uint_t size, in ibt_post_srq() argument 197 srq, wr_list, size); in ibt_post_srq() 199 return (IBTL_SRQ2CIHCAOPS_P(srq)->ibc_post_srq(IBTL_SRQ2CIHCA(srq), in ibt_post_srq() 200 srq->srq_ibc_srq_hdl, wr_list, size, posted)); in ibt_post_srq()
|
/illumos-gate/usr/src/uts/common/sys/ib/ibtl/ |
H A D | ibci.h | 330 ibt_status_t (*ibc_free_srq)(ibc_hca_hdl_t hca, ibc_srq_hdl_t srq); 331 ibt_status_t (*ibc_query_srq)(ibc_hca_hdl_t hca, ibc_srq_hdl_t srq, 333 ibt_status_t (*ibc_modify_srq)(ibc_hca_hdl_t hca, ibc_srq_hdl_t srq, 336 ibt_status_t (*ibc_post_srq)(ibc_hca_hdl_t hca, ibc_srq_hdl_t srq,
|
/illumos-gate/usr/src/uts/common/sys/ib/clients/of/rdma/ |
H A D | ib_verbs.h | 284 struct ib_srq *srq; member 452 struct ib_srq *srq; member 611 struct ib_srq *srq; member
|
/illumos-gate/usr/src/uts/common/io/ib/clients/of/sol_uverbs/ |
H A D | sol_uverbs_qp.c | 452 qp_attr.qp_srq_hdl = usrq->srq; in sol_uverbs_create_qp() 1898 rc = ibt_alloc_srq(uctxt->hca->hdl, flags, upd->pd, &attr, &usrq->srq, in sol_uverbs_create_srq() 1904 usrq->srq = NULL; in sol_uverbs_create_srq() 1910 ibt_set_srq_private(usrq->srq, usrq); in sol_uverbs_create_srq() 1922 (void *)usrq->srq, &resp.drv_out, sizeof (resp.drv_out)); in sol_uverbs_create_srq() 1988 (void) ibt_free_srq(usrq->srq); in sol_uverbs_create_srq() 2052 rc = ibt_modify_srq(usrq->srq, flags, size, limit, &real_size); in sol_uverbs_modify_srq() 2114 rc = ibt_query_srq(usrq->srq, &pd, &attr, &limit); in sol_uverbs_query_srq() 2160 if (!usrq->srq) in uverbs_usrq_free() 2163 rc = ibt_free_srq(usrq->srq); in uverbs_usrq_free() [all …]
|