Searched refs:srq (Results 1 - 25 of 73) sorted by relevance

123

/freebsd-11-stable/sys/dev/mthca/
H A Dmthca_srq.c72 static void *get_wqe(struct mthca_srq *srq, int n) argument
74 if (srq->is_direct)
75 return srq->queue.direct.buf + (n << srq->wqe_shift);
77 return srq->queue.page_list[(n << srq->wqe_shift) >> PAGE_SHIFT].buf +
78 ((n << srq->wqe_shift) & (PAGE_SIZE - 1));
97 struct mthca_srq *srq,
102 context->wqe_base_ds = cpu_to_be64(1 << (srq->wqe_shift - 4));
104 context->lkey = cpu_to_be32(srq
95 mthca_tavor_init_srq_context(struct mthca_dev *dev, struct mthca_pd *pd, struct mthca_srq *srq, struct mthca_tavor_srq_context *context) argument
113 mthca_arbel_init_srq_context(struct mthca_dev *dev, struct mthca_pd *pd, struct mthca_srq *srq, struct mthca_arbel_srq_context *context) argument
140 mthca_free_srq_buf(struct mthca_dev *dev, struct mthca_srq *srq) argument
147 mthca_alloc_srq_buf(struct mthca_dev *dev, struct mthca_pd *pd, struct mthca_srq *srq) argument
199 mthca_alloc_srq(struct mthca_dev *dev, struct mthca_pd *pd, struct ib_srq_attr *attr, struct mthca_srq *srq) argument
319 get_srq_refcount(struct mthca_dev *dev, struct mthca_srq *srq) argument
330 mthca_free_srq(struct mthca_dev *dev, struct mthca_srq *srq) argument
368 struct mthca_srq *srq = to_msrq(ibsrq); local
391 struct mthca_srq *srq = to_msrq(ibsrq); local
425 struct mthca_srq *srq; local
457 mthca_free_srq_wqe(struct mthca_srq *srq, u32 wqe_addr) argument
479 struct mthca_srq *srq = to_msrq(ibsrq); local
579 struct mthca_srq *srq = to_msrq(ibsrq); local
[all...]
/freebsd-11-stable/contrib/ofed/libmlx4/
H A Dsrq.c44 static void *get_wqe(struct mlx4_srq *srq, int n) argument
46 return srq->buf.buf + (n << srq->wqe_shift);
49 void mlx4_free_srq_wqe(struct mlx4_srq *srq, int ind) argument
53 pthread_spin_lock(&srq->lock);
55 next = get_wqe(srq, srq->tail);
57 srq->tail = ind;
59 pthread_spin_unlock(&srq->lock);
66 struct mlx4_srq *srq local
125 mlx4_alloc_srq_buf(struct ibv_pd *pd, struct ibv_srq_attr *attr, struct mlx4_srq *srq) argument
196 mlx4_store_xsrq(struct mlx4_xsrq_table *xsrq_table, uint32_t srqn, struct mlx4_srq *srq) argument
240 struct mlx4_srq *srq; local
298 mlx4_destroy_xrc_srq(struct ibv_srq *srq) argument
[all...]
H A Dverbs.c646 struct mlx4_srq *srq; local
653 srq = malloc(sizeof *srq);
654 if (!srq)
657 if (pthread_spin_init(&srq->lock, PTHREAD_PROCESS_PRIVATE))
660 srq->max = align_queue_size(attr->attr.max_wr + 1);
661 srq->max_gs = attr->attr.max_sge;
662 srq->counter = 0;
663 srq->ext_srq = 0;
665 if (mlx4_alloc_srq_buf(pd, &attr->attr, srq))
710 mlx4_modify_srq(struct ibv_srq *srq, struct ibv_srq_attr *attr, int attr_mask) argument
719 mlx4_query_srq(struct ibv_srq *srq, struct ibv_srq_attr *attr) argument
727 mlx4_destroy_srq(struct ibv_srq *srq) argument
[all...]
H A Dmlx4.h331 return container_of(container_of(ibsrq, struct verbs_srq, srq),
397 void __mlx4_cq_clean(struct mlx4_cq *cq, uint32_t qpn, struct mlx4_srq *srq);
398 void mlx4_cq_clean(struct mlx4_cq *cq, uint32_t qpn, struct mlx4_srq *srq);
408 int mlx4_modify_srq(struct ibv_srq *srq,
411 int mlx4_query_srq(struct ibv_srq *srq,
413 int mlx4_destroy_srq(struct ibv_srq *srq);
414 int mlx4_destroy_xrc_srq(struct ibv_srq *srq);
416 struct mlx4_srq *srq);
420 struct mlx4_srq *srq);
422 void mlx4_free_srq_wqe(struct mlx4_srq *srq, in
[all...]
H A Dcq.c241 struct mlx4_srq *srq; local
270 srq = mlx4_find_xsrq(&mctx->xsrq_table,
272 if (!srq)
285 srq = ((*cur_qp)->verbs_qp.qp.srq) ? to_msrq((*cur_qp)->verbs_qp.qp.srq) : NULL;
295 } else if (srq) {
297 *pwr_id = srq->wrid[wqe_index];
298 mlx4_free_srq_wqe(srq, wqe_index);
714 void __mlx4_cq_clean(struct mlx4_cq *cq, uint32_t qpn, struct mlx4_srq *srq) argument
770 mlx4_cq_clean(struct mlx4_cq *cq, uint32_t qpn, struct mlx4_srq *srq) argument
[all...]
/freebsd-11-stable/sys/dev/mlx4/mlx4_ib/
H A Dmlx4_ib_srq.c35 #include <dev/mlx4/srq.h>
41 static void *get_wqe(struct mlx4_ib_srq *srq, int n) argument
43 return mlx4_buf_offset(&srq->buf, n << srq->msrq.wqe_shift);
46 static void mlx4_ib_srq_event(struct mlx4_srq *srq, enum mlx4_event type) argument
49 struct ib_srq *ibsrq = &to_mibsrq(srq)->ibsrq;
53 event.element.srq = ibsrq;
63 "on SRQ %06x\n", type, srq->srqn);
76 struct mlx4_ib_srq *srq; local
91 srq
237 struct mlx4_ib_srq *srq = to_msrq(ibsrq); local
262 struct mlx4_ib_srq *srq = to_msrq(ibsrq); local
277 mlx4_ib_destroy_srq(struct ib_srq *srq) argument
300 mlx4_ib_free_srq_wqe(struct mlx4_ib_srq *srq, int wqe_index) argument
317 struct mlx4_ib_srq *srq = to_msrq(ibsrq); local
[all...]
H A Dmlx4_ib_cq.c36 #include <dev/mlx4/srq.h>
662 struct mlx4_ib_srq *srq; local
738 } else if ((*cur_qp)->ibqp.srq) {
739 srq = to_msrq((*cur_qp)->ibqp.srq);
741 wc->wr_id = srq->wrid[wqe_ctr];
742 mlx4_ib_free_srq_wqe(srq, wqe_ctr);
744 srq = to_mibsrq(msrq);
746 wc->wr_id = srq->wrid[wqe_ctr];
747 mlx4_ib_free_srq_wqe(srq, wqe_ct
918 __mlx4_ib_cq_clean(struct mlx4_ib_cq *cq, u32 qpn, struct mlx4_ib_srq *srq) argument
971 mlx4_ib_cq_clean(struct mlx4_ib_cq *cq, u32 qpn, struct mlx4_ib_srq *srq) argument
[all...]
/freebsd-11-stable/contrib/ofed/libmlx5/
H A Dsrq.c44 static void *get_wqe(struct mlx5_srq *srq, int n) argument
46 return srq->buf.buf + (n << srq->wqe_shift);
49 int mlx5_copy_to_recv_srq(struct mlx5_srq *srq, int idx, void *buf, int size) argument
55 int max = 1 << (srq->wqe_shift - 4);
57 next = get_wqe(srq, idx);
73 void mlx5_free_srq_wqe(struct mlx5_srq *srq, int ind) argument
77 mlx5_spin_lock(&srq->lock);
79 next = get_wqe(srq, srq
90 struct mlx5_srq *srq = to_msrq(ibsrq); local
149 mlx5_alloc_srq_buf(struct ibv_context *context, struct mlx5_srq *srq) argument
219 mlx5_store_srq(struct mlx5_context *ctx, uint32_t srqn, struct mlx5_srq *srq) argument
[all...]
H A Dverbs.c618 struct mlx5_srq *srq; local
625 srq = calloc(1, sizeof *srq);
626 if (!srq) {
630 ibsrq = &srq->vsrq.srq;
633 if (mlx5_spinlock_init(&srq->lock)) {
658 srq->max = align_queue_size(attr->attr.max_wr + 1);
659 srq->max_gs = attr->attr.max_sge;
660 srq
717 mlx5_modify_srq(struct ibv_srq *srq, struct ibv_srq_attr *attr, int attr_mask) argument
726 mlx5_query_srq(struct ibv_srq *srq, struct ibv_srq_attr *attr) argument
734 mlx5_destroy_srq(struct ibv_srq *srq) argument
1749 mlx5_get_srq_num(struct ibv_srq *srq, uint32_t *srq_num) argument
[all...]
H A Dmlx5.h609 void __mlx5_cq_clean(struct mlx5_cq *cq, uint32_t qpn, struct mlx5_srq *srq);
610 void mlx5_cq_clean(struct mlx5_cq *cq, uint32_t qpn, struct mlx5_srq *srq);
615 int mlx5_modify_srq(struct ibv_srq *srq, struct ibv_srq_attr *attr,
617 int mlx5_query_srq(struct ibv_srq *srq,
619 int mlx5_destroy_srq(struct ibv_srq *srq);
620 int mlx5_alloc_srq_buf(struct ibv_context *context, struct mlx5_srq *srq);
621 void mlx5_free_srq_wqe(struct mlx5_srq *srq, int ind);
652 struct mlx5_srq *srq);
666 int mlx5_copy_to_recv_srq(struct mlx5_srq *srq, int idx, void *buf, int size);
669 int mlx5_get_srq_num(struct ibv_srq *srq, uint32_
[all...]
H A Dcq.c144 struct mlx5_resource *cur_rsc, struct mlx5_srq *srq)
151 if (srq) {
153 cq->ibv_cq.wr_id = srq->wrid[wqe_ctr];
154 mlx5_free_srq_wqe(srq, wqe_ctr);
156 err = mlx5_copy_to_recv_srq(srq, wqe_ctr, cqe,
159 err = mlx5_copy_to_recv_srq(srq, wqe_ctr, cqe - 1,
185 struct mlx5_resource *cur_rsc, struct mlx5_srq *srq)
194 if (srq) {
196 wc->wr_id = srq->wrid[wqe_ctr];
197 mlx5_free_srq_wqe(srq, wqe_ct
143 handle_responder_lazy(struct mlx5_cq *cq, struct mlx5_cqe64 *cqe, struct mlx5_resource *cur_rsc, struct mlx5_srq *srq) argument
184 handle_responder(struct ibv_wc *wc, struct mlx5_cqe64 *cqe, struct mlx5_resource *cur_rsc, struct mlx5_srq *srq) argument
737 struct mlx5_srq *srq = NULL; local
1341 free_res_cqe(struct mlx5_cqe64 *cqe64, uint32_t rsn, struct mlx5_srq *srq, int cqe_version) argument
1363 __mlx5_cq_clean(struct mlx5_cq *cq, uint32_t rsn, struct mlx5_srq *srq) argument
1417 mlx5_cq_clean(struct mlx5_cq *cq, uint32_t qpn, struct mlx5_srq *srq) argument
[all...]
/freebsd-11-stable/sys/dev/mlx5/mlx5_ib/
H A Dmlx5_ib_srq.c30 #include <dev/mlx5/srq.h>
40 static void *get_wqe(struct mlx5_ib_srq *srq, int n) argument
42 return mlx5_buf_offset(&srq->buf, n << srq->msrq.wqe_shift);
45 static void mlx5_ib_srq_event(struct mlx5_core_srq *srq, int type) argument
48 struct ib_srq *ibsrq = &to_mibsrq(srq)->ibsrq;
52 event.element.srq = ibsrq;
62 type, srq->srqn);
70 static int create_srq_user(struct ib_pd *pd, struct mlx5_ib_srq *srq, argument
106 srq
156 create_srq_kernel(struct mlx5_ib_dev *dev, struct mlx5_ib_srq *srq, struct mlx5_srq_attr *in, int buf_size) argument
220 destroy_srq_user(struct ib_pd *pd, struct mlx5_ib_srq *srq) argument
227 destroy_srq_kernel(struct mlx5_ib_dev *dev, struct mlx5_ib_srq *srq) argument
239 struct mlx5_ib_srq *srq; local
352 struct mlx5_ib_srq *srq = to_msrq(ibsrq); local
377 struct mlx5_ib_srq *srq = to_msrq(ibsrq); local
398 mlx5_ib_destroy_srq(struct ib_srq *srq) argument
416 mlx5_ib_free_srq_wqe(struct mlx5_ib_srq *srq, int wqe_index) argument
433 struct mlx5_ib_srq *srq = to_msrq(ibsrq); local
[all...]
/freebsd-11-stable/sys/dev/mlx5/mlx5_core/
H A Dmlx5_srq.c31 #include <dev/mlx5/srq.h>
39 struct mlx5_core_srq *srq; local
43 srq = radix_tree_lookup(&table->tree, srqn);
44 if (srq)
45 atomic_inc(&srq->refcount);
49 if (!srq) {
54 srq->event(srq, event_type);
56 if (atomic_dec_and_test(&srq->refcount))
57 complete(&srq
115 struct mlx5_core_srq *srq; local
145 create_rmp_cmd(struct mlx5_core_dev *dev, struct mlx5_core_srq *srq, struct mlx5_srq_attr *in) argument
174 destroy_rmp_cmd(struct mlx5_core_dev *dev, struct mlx5_core_srq *srq) argument
180 query_rmp_cmd(struct mlx5_core_dev *dev, struct mlx5_core_srq *srq, struct mlx5_srq_attr *out) argument
205 arm_rmp_cmd(struct mlx5_core_dev *dev, struct mlx5_core_srq *srq, u16 lwm) argument
210 create_xrc_srq_cmd(struct mlx5_core_dev *dev, struct mlx5_core_srq *srq, struct mlx5_srq_attr *in) argument
243 destroy_xrc_srq_cmd(struct mlx5_core_dev *dev, struct mlx5_core_srq *srq) argument
249 query_xrc_srq_cmd(struct mlx5_core_dev *dev, struct mlx5_core_srq *srq, struct mlx5_srq_attr *out) argument
276 arm_xrc_srq_cmd(struct mlx5_core_dev *dev, struct mlx5_core_srq *srq, u16 lwm) argument
282 create_srq_cmd(struct mlx5_core_dev *dev, struct mlx5_core_srq *srq, struct mlx5_srq_attr *in) argument
314 destroy_srq_cmd(struct mlx5_core_dev *dev, struct mlx5_core_srq *srq) argument
326 query_srq_cmd(struct mlx5_core_dev *dev, struct mlx5_core_srq *srq, struct mlx5_srq_attr *out) argument
354 arm_srq_cmd(struct mlx5_core_dev *dev, struct mlx5_core_srq *srq, u16 lwm, int is_srq) argument
368 create_srq_split(struct mlx5_core_dev *dev, struct mlx5_core_srq *srq, struct mlx5_srq_attr *in) argument
379 destroy_srq_split(struct mlx5_core_dev *dev, struct mlx5_core_srq *srq) argument
389 mlx5_core_create_srq(struct mlx5_core_dev *dev, struct mlx5_core_srq *srq, struct mlx5_srq_attr *in) argument
424 mlx5_core_destroy_srq(struct mlx5_core_dev *dev, struct mlx5_core_srq *srq) argument
454 mlx5_core_query_srq(struct mlx5_core_dev *dev, struct mlx5_core_srq *srq, struct mlx5_srq_attr *out) argument
466 mlx5_core_arm_srq(struct mlx5_core_dev *dev, struct mlx5_core_srq *srq, u16 lwm, int is_srq) argument
[all...]
/freebsd-11-stable/sys/dev/mlx4/mlx4_core/
H A Dmlx4_srq.c35 #include <dev/mlx4/srq.h>
46 struct mlx4_srq *srq; local
49 srq = radix_tree_lookup(&srq_table->tree, srqn & (dev->caps.num_srqs - 1));
51 if (srq)
52 atomic_inc(&srq->refcount);
58 srq->event(srq, event_type);
60 if (atomic_dec_and_test(&srq->refcount))
61 complete(&srq->free);
163 struct mlx4_mtt *mtt, u64 db_rec, struct mlx4_srq *srq)
162 mlx4_srq_alloc(struct mlx4_dev *dev, u32 pdn, u32 cqn, u16 xrcd, struct mlx4_mtt *mtt, u64 db_rec, struct mlx4_srq *srq) argument
222 mlx4_srq_free(struct mlx4_dev *dev, struct mlx4_srq *srq) argument
243 mlx4_srq_arm(struct mlx4_dev *dev, struct mlx4_srq *srq, int limit_watermark) argument
249 mlx4_srq_query(struct mlx4_dev *dev, struct mlx4_srq *srq, int *limit_watermark) argument
300 struct mlx4_srq *srq; local
[all...]
/freebsd-11-stable/lib/ofed/libmlx4/
H A DMakefile17 srq.c \
/freebsd-11-stable/contrib/ofed/libibverbs/
H A Dcompat-1_0.c77 struct ibv_srq_1_0 *srq; member in struct:ibv_qp_init_attr_1_0
123 struct ibv_srq_1_0 *srq; member in struct:ibv_qp_1_0
187 int (*modify_srq)(struct ibv_srq *srq,
190 int (*query_srq)(struct ibv_srq *srq,
192 int (*destroy_srq)(struct ibv_srq *srq);
193 int (*post_srq_recv)(struct ibv_srq_1_0 *srq,
268 int __ibv_modify_srq_1_0(struct ibv_srq_1_0 *srq, struct ibv_srq_attr *srq_attr,
270 int __ibv_query_srq_1_0(struct ibv_srq_1_0 *srq, struct ibv_srq_attr *srq_attr);
271 int __ibv_destroy_srq_1_0(struct ibv_srq_1_0 *srq);
367 static int post_srq_recv_wrapper_1_0(struct ibv_srq_1_0 *srq, struc argument
816 struct ibv_srq_1_0 *srq; local
839 __ibv_modify_srq_1_0(struct ibv_srq_1_0 *srq, struct ibv_srq_attr *srq_attr, int srq_attr_mask) argument
847 __ibv_query_srq_1_0(struct ibv_srq_1_0 *srq, struct ibv_srq_attr *srq_attr) argument
853 __ibv_destroy_srq_1_0(struct ibv_srq_1_0 *srq) argument
[all...]
H A Ddriver.h78 struct ibv_srq srq; member in struct:verbs_srq
208 struct ibv_srq *srq, struct ibv_srq_init_attr *attr,
212 struct verbs_srq *srq, int vsrq_sz,
216 int ibv_cmd_modify_srq(struct ibv_srq *srq,
220 int ibv_cmd_query_srq(struct ibv_srq *srq,
223 int ibv_cmd_destroy_srq(struct ibv_srq *srq);
265 int ibv_cmd_post_srq_recv(struct ibv_srq *srq, struct ibv_recv_wr *wr,
313 static inline int verbs_get_srq_num(struct ibv_srq *srq, uint32_t *srq_num) argument
315 struct verbs_srq *vsrq = container_of(srq, struct verbs_srq, srq);
[all...]
H A Dcmd.c641 struct ibv_srq *srq, struct ibv_srq_init_attr *attr,
646 cmd->user_handle = (uintptr_t) srq;
657 srq->handle = resp->srq_handle;
658 srq->context = pd->context;
676 struct verbs_srq *srq, int vsrq_sz,
691 cmd->user_handle = (uintptr_t) srq;
713 srq->srq.handle = resp->srq_handle;
714 srq->srq
640 ibv_cmd_create_srq(struct ibv_pd *pd, struct ibv_srq *srq, struct ibv_srq_init_attr *attr, struct ibv_create_srq *cmd, size_t cmd_size, struct ibv_create_srq_resp *resp, size_t resp_size) argument
675 ibv_cmd_create_srq_ex(struct ibv_context *context, struct verbs_srq *srq, int vsrq_sz, struct ibv_srq_init_attr_ex *attr_ex, struct ibv_create_xsrq *cmd, size_t cmd_size, struct ibv_create_srq_resp *resp, size_t resp_size) argument
750 ibv_cmd_modify_srq_v3(struct ibv_srq *srq, struct ibv_srq_attr *srq_attr, int srq_attr_mask, struct ibv_modify_srq *new_cmd, size_t new_cmd_size) argument
778 ibv_cmd_modify_srq(struct ibv_srq *srq, struct ibv_srq_attr *srq_attr, int srq_attr_mask, struct ibv_modify_srq *cmd, size_t cmd_size) argument
800 ibv_cmd_query_srq(struct ibv_srq *srq, struct ibv_srq_attr *srq_attr, struct ibv_query_srq *cmd, size_t cmd_size) argument
821 ibv_cmd_destroy_srq(struct ibv_srq *srq) argument
1521 ibv_cmd_post_srq_recv(struct ibv_srq *srq, struct ibv_recv_wr *wr, struct ibv_recv_wr **bad_wr) argument
[all...]
H A Dverbs.c85 int __ibv_modify_srq(struct ibv_srq *srq, struct ibv_srq_attr *srq_attr,
87 int __ibv_query_srq(struct ibv_srq *srq, struct ibv_srq_attr *srq_attr);
88 int __ibv_destroy_srq(struct ibv_srq *srq);
526 struct ibv_srq *srq; local
531 srq = pd->context->ops.create_srq(pd, srq_init_attr);
532 if (srq) {
533 srq->context = pd->context;
534 srq->srq_context = srq_init_attr->srq_context;
535 srq->pd = pd;
536 srq
545 __ibv_modify_srq(struct ibv_srq *srq, struct ibv_srq_attr *srq_attr, int srq_attr_mask) argument
553 __ibv_query_srq(struct ibv_srq *srq, struct ibv_srq_attr *srq_attr) argument
559 __ibv_destroy_srq(struct ibv_srq *srq) argument
[all...]
H A Ddevice.c317 event->element.srq = (void *) (uintptr_t) ev.element;
372 struct ibv_srq *srq = event->element.srq; local
374 pthread_mutex_lock(&srq->mutex);
375 ++srq->events_completed;
376 pthread_cond_signal(&srq->cond);
377 pthread_mutex_unlock(&srq->mutex);
/freebsd-11-stable/lib/ofed/libmlx5/
H A DMakefile17 srq.c \
/freebsd-11-stable/sys/ofed/drivers/infiniband/core/
H A Dib_verbs.c623 struct ib_srq *srq; local
628 srq = pd->device->create_srq(pd, srq_init_attr, NULL);
630 if (!IS_ERR(srq)) {
631 srq->device = pd->device;
632 srq->pd = pd;
633 srq->uobject = NULL;
634 srq->event_handler = srq_init_attr->event_handler;
635 srq->srq_context = srq_init_attr->srq_context;
636 srq->srq_type = srq_init_attr->srq_type;
637 if (srq
651 ib_modify_srq(struct ib_srq *srq, struct ib_srq_attr *srq_attr, enum ib_srq_attr_mask srq_attr_mask) argument
661 ib_query_srq(struct ib_srq *srq, struct ib_srq_attr *srq_attr) argument
669 ib_destroy_srq(struct ib_srq *srq) argument
1321 struct ib_srq *srq; local
[all...]
/freebsd-11-stable/contrib/ofed/libibcm/
H A Dcm.h122 unsigned int srq:1; member in struct:ib_cm_req_event_param
136 unsigned int srq:1; member in struct:ib_cm_rep_event_param
370 uint8_t srq; member in struct:ib_cm_req_param
394 uint8_t srq; member in struct:ib_cm_rep_param
/freebsd-11-stable/sys/ofed/include/rdma/
H A Dib_cm.h146 unsigned int srq:1; member in struct:ib_cm_req_event_param
160 unsigned int srq:1; member in struct:ib_cm_rep_event_param
400 u8 srq; member in struct:ib_cm_req_param
423 u8 srq; member in struct:ib_cm_rep_param
/freebsd-11-stable/sys/ofed/include/uapi/rdma/
H A Dib_user_cm.h158 __u8 srq; member in struct:ib_ucm_req
175 __u8 srq; member in struct:ib_ucm_rep
255 __u8 srq; member in struct:ib_ucm_req_event_resp
271 __u8 srq; member in struct:ib_ucm_rep_event_resp

Completed in 322 milliseconds

123