Home
last modified time | relevance | path

Searched refs:msrq (Results 1 – 12 of 12) sorted by relevance

/freebsd/sys/dev/mlx4/mlx4_ib/
H A Dmlx4_ib_srq.c44 return mlx4_buf_offset(&srq->buf, n << srq->msrq.wqe_shift); in get_wqe()
96 srq->msrq.max = roundup_pow_of_two(init_attr->attr.max_wr + 1); in mlx4_ib_create_srq()
97 srq->msrq.max_gs = init_attr->attr.max_sge; in mlx4_ib_create_srq()
101 srq->msrq.max_gs * in mlx4_ib_create_srq()
103 srq->msrq.wqe_shift = ilog2(desc_size); in mlx4_ib_create_srq()
105 buf_size = srq->msrq.max * desc_size; in mlx4_ib_create_srq()
145 srq->tail = srq->msrq.max - 1; in mlx4_ib_create_srq()
148 for (i = 0; i < srq->msrq.max; ++i) { in mlx4_ib_create_srq()
151 cpu_to_be16((i + 1) & (srq->msrq.max - 1)); in mlx4_ib_create_srq()
168 srq->wrid = kmalloc_array(srq->msrq.max, sizeof(u64), in mlx4_ib_create_srq()
[all …]
H A Dmlx4_ib.h336 struct mlx4_srq msrq; member
694 static inline struct mlx4_ib_srq *to_mibsrq(struct mlx4_srq *msrq) in to_mibsrq() argument
696 return container_of(msrq, struct mlx4_ib_srq, msrq); in to_mibsrq()
H A Dmlx4_ib_cq.c657 struct mlx4_srq *msrq = NULL; in mlx4_ib_poll_one() local
720 msrq = mlx4_srq_lookup(to_mdev(cq->ibcq.device)->dev, in mlx4_ib_poll_one()
737 } else if (msrq) { in mlx4_ib_poll_one()
738 srq = to_mibsrq(msrq); in mlx4_ib_poll_one()
H A Dmlx4_ib_qp.c1919 context->srqn = cpu_to_be32(1 << 24 | to_msrq(ibqp->srq)->msrq.srqn); in __mlx4_ib_modify_qp()
/freebsd/sys/dev/mlx5/mlx5_ib/
H A Dmlx5_ib_srq.c41 return mlx5_buf_offset(&srq->buf, n << srq->msrq.wqe_shift); in get_wqe()
176 srq->tail = srq->msrq.max - 1; in create_srq_kernel()
179 for (i = 0; i < srq->msrq.max; i++) { in create_srq_kernel()
182 cpu_to_be16((i + 1) & (srq->msrq.max - 1)); in create_srq_kernel()
193 srq->wrid = kmalloc(srq->msrq.max * sizeof(u64), GFP_KERNEL); in create_srq_kernel()
260 srq->msrq.max = roundup_pow_of_two(init_attr->attr.max_wr + 1); in mlx5_ib_create_srq()
261 srq->msrq.max_gs = init_attr->attr.max_sge; in mlx5_ib_create_srq()
264 srq->msrq.max_gs * sizeof(struct mlx5_wqe_data_seg); in mlx5_ib_create_srq()
265 if (desc_size == 0 || srq->msrq.max_gs > desc_size) in mlx5_ib_create_srq()
273 srq->msrq.max_avail_gather = (desc_size - sizeof(struct mlx5_wqe_srq_next_seg)) / in mlx5_ib_create_srq()
[all …]
H A Dmlx5_ib_cq.c177 struct mlx5_core_srq *msrq = NULL; in handle_responder() local
180 msrq = mlx5_core_get_srq(dev->mdev, in handle_responder()
182 srq = to_mibsrq(msrq); in handle_responder()
190 if (msrq && atomic_dec_and_test(&msrq->refcount)) in handle_responder()
191 complete(&msrq->free); in handle_responder()
H A Dmlx5_ib.h497 struct mlx5_core_srq msrq; member
863 static inline struct mlx5_ib_srq *to_mibsrq(struct mlx5_core_srq *msrq) in to_mibsrq() argument
865 return container_of(msrq, struct mlx5_ib_srq, msrq); in to_mibsrq()
H A Dmlx5_ib_qp.c1804 MLX5_SET(qpc, qpc, srqn_rmpn, to_msrq(devr->s0)->msrq.srqn); in create_qp_common()
1810 MLX5_SET(qpc, qpc, srqn_rmpn, to_msrq(devr->s0)->msrq.srqn); in create_qp_common()
1815 MLX5_SET(qpc, qpc, srqn_rmpn, to_msrq(init_attr->srq)->msrq.srqn); in create_qp_common()
1818 MLX5_SET(qpc, qpc, srqn_rmpn, to_msrq(devr->s1)->msrq.srqn); in create_qp_common()
H A Dmlx5_ib_devx.c619 struct mlx5_core_srq *srq = &(to_msrq(uobj->object)->msrq); in devx_is_valid_obj_id()
637 to_msrq(uobj->object)->msrq.srqn) == in devx_is_valid_obj_id()
/freebsd/contrib/ofed/libmlx4/
H A Dsrq.c309 struct mlx4_srq *msrq = to_msrq(srq); in mlx4_destroy_xrc_srq() local
313 mcq = to_mcq(msrq->verbs_srq.cq); in mlx4_destroy_xrc_srq()
314 mlx4_cq_clean(mcq, 0, msrq); in mlx4_destroy_xrc_srq()
316 mlx4_clear_xsrq(&mctx->xsrq_table, msrq->verbs_srq.srq_num); in mlx4_destroy_xrc_srq()
322 mlx4_store_xsrq(&mctx->xsrq_table, msrq->verbs_srq.srq_num, msrq); in mlx4_destroy_xrc_srq()
327 mlx4_free_db(mctx, MLX4_DB_TYPE_RQ, msrq->db); in mlx4_destroy_xrc_srq()
328 mlx4_free_buf(&msrq->buf); in mlx4_destroy_xrc_srq()
329 free(msrq->wrid); in mlx4_destroy_xrc_srq()
330 pthread_spin_destroy(&msrq->lock); in mlx4_destroy_xrc_srq()
331 free(msrq); in mlx4_destroy_xrc_srq()
/freebsd/contrib/ofed/libmlx5/
H A Dverbs.c752 struct mlx5_srq *msrq = to_msrq(srq); in mlx5_destroy_srq() local
759 if (ctx->cqe_version && msrq->rsc.type == MLX5_RSC_TYPE_XSRQ) in mlx5_destroy_srq()
760 mlx5_clear_uidx(ctx, msrq->rsc.rsn); in mlx5_destroy_srq()
762 mlx5_clear_srq(ctx, msrq->srqn); in mlx5_destroy_srq()
764 mlx5_free_db(ctx, msrq->db); in mlx5_destroy_srq()
765 mlx5_free_buf(&msrq->buf); in mlx5_destroy_srq()
766 free(msrq->wrid); in mlx5_destroy_srq()
767 mlx5_spinlock_destroy(&msrq->lock); in mlx5_destroy_srq()
768 free(msrq); in mlx5_destroy_srq()
1777 struct mlx5_srq *msrq in mlx5_get_srq_num() local
1826 struct mlx5_srq *msrq; mlx5_create_xrc_srq() local
[all...]
H A Dmlx5.c712 struct mlx5_srq *msrq; in mlx5dv_get_srq() local
714 msrq = container_of(srq_in, struct mlx5_srq, vsrq.srq); in mlx5dv_get_srq()
717 srq_out->buf = msrq->buf.buf; in mlx5dv_get_srq()
718 srq_out->dbrec = msrq->db; in mlx5dv_get_srq()
719 srq_out->stride = 1 << msrq->wqe_shift; in mlx5dv_get_srq()
720 srq_out->head = msrq->head; in mlx5dv_get_srq()
721 srq_out->tail = msrq->tail; in mlx5dv_get_srq()