/freebsd-9.3-release/contrib/ofed/libmthca/src/ |
H A D | srq.c | 46 static void *get_wqe(struct mthca_srq *srq, int n) argument 48 return srq->buf.buf + (n << srq->wqe_shift); 65 void mthca_free_srq_wqe(struct mthca_srq *srq, int ind) argument 69 pthread_spin_lock(&srq->lock); 71 last_free = get_wqe(srq, srq->last_free); 73 last_free->nda_op = htonl((ind << srq->wqe_shift) | 1); 74 *wqe_to_link(get_wqe(srq, ind)) = -1; 75 srq 84 struct mthca_srq *srq = to_msrq(ibsrq); local 186 struct mthca_srq *srq = to_msrq(ibsrq); local 253 mthca_alloc_srq_buf(struct ibv_pd *pd, struct ibv_srq_attr *attr, struct mthca_srq *srq) argument [all...] |
H A D | verbs.c | 397 struct mthca_srq *srq; local 404 srq = malloc(sizeof *srq); 405 if (!srq) 408 if (pthread_spin_init(&srq->lock, PTHREAD_PROCESS_PRIVATE)) 411 srq->max = align_queue_size(pd->context, attr->attr.max_wr, 1); 412 srq->max_gs = attr->attr.max_sge; 413 srq->counter = 0; 415 if (mthca_alloc_srq_buf(pd, &attr->attr, srq)) 418 srq 469 mthca_modify_srq(struct ibv_srq *srq, struct ibv_srq_attr *attr, enum ibv_srq_attr_mask attr_mask) argument 478 mthca_query_srq(struct ibv_srq *srq, struct ibv_srq_attr *attr) argument 486 mthca_destroy_srq(struct ibv_srq *srq) argument [all...] |
H A D | mthca.h | 275 return to_mxxx(srq, srq); 324 void __mthca_cq_clean(struct mthca_cq *cq, uint32_t qpn, struct mthca_srq *srq); 325 void mthca_cq_clean(struct mthca_cq *cq, uint32_t qpn, struct mthca_srq *srq); 331 int mthca_modify_srq(struct ibv_srq *srq, 334 int mthca_query_srq(struct ibv_srq *srq, 336 int mthca_destroy_srq(struct ibv_srq *srq); 338 struct mthca_srq *srq); 339 void mthca_free_srq_wqe(struct mthca_srq *srq, int ind);
|
H A D | cq.c | 297 struct mthca_srq *srq; local 343 } else if ((*cur_qp)->ibv_qp.srq) { 344 srq = to_msrq((*cur_qp)->ibv_qp.srq); 347 wqe_index = wqe >> srq->wqe_shift; 348 wc->wr_id = srq->wrid[wqe_index]; 349 mthca_free_srq_wqe(srq, wqe_index); 549 void __mthca_cq_clean(struct mthca_cq *cq, uint32_t qpn, struct mthca_srq *srq) argument 575 if (srq && is_recv_cqe(cqe)) 576 mthca_free_srq_wqe(srq, 593 mthca_cq_clean(struct mthca_cq *cq, uint32_t qpn, struct mthca_srq *srq) argument [all...] |
/freebsd-9.3-release/sys/ofed/drivers/infiniband/hw/mthca/ |
H A D | mthca_srq.c | 72 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 328 get_srq_refcount(struct mthca_dev *dev, struct mthca_srq *srq) argument 339 mthca_free_srq(struct mthca_dev *dev, struct mthca_srq *srq) argument 380 struct mthca_srq *srq = to_msrq(ibsrq); local 409 struct mthca_srq *srq = to_msrq(ibsrq); local 444 struct mthca_srq *srq; local 476 mthca_free_srq_wqe(struct mthca_srq *srq, u32 wqe_addr) argument 498 struct mthca_srq *srq = to_msrq(ibsrq); local 598 struct mthca_srq *srq = to_msrq(ibsrq); local [all...] |
/freebsd-9.3-release/sys/ofed/drivers/infiniband/hw/mlx4/ |
H A D | srq.c | 35 #include <linux/mlx4/srq.h> 40 static void *get_wqe(struct mlx4_ib_srq *srq, int n) argument 42 return mlx4_buf_offset(&srq->buf, n << srq->msrq.wqe_shift); 45 static void mlx4_ib_srq_event(struct mlx4_srq *srq, enum mlx4_event type) argument 48 struct ib_srq *ibsrq = &to_mibsrq(srq)->ibsrq; 52 event.element.srq = ibsrq; 62 "on SRQ %06x\n", type, srq->srqn); 77 struct mlx4_ib_srq *srq; local 95 srq 237 struct mlx4_ib_srq *srq = to_msrq(ibsrq); local 273 struct mlx4_ib_srq *srq = to_msrq(ibsrq); local 288 mlx4_ib_destroy_srq(struct ib_srq *srq) argument 323 mlx4_ib_free_srq_wqe(struct mlx4_ib_srq *srq, int wqe_index) argument 340 struct mlx4_ib_srq *srq = to_msrq(ibsrq); local [all...] |
H A D | Makefile | 3 mlx4_ib-y := ah.o cq.o doorbell.o mad.o main.o mr.o qp.o srq.o
|
H A D | cq.c | 36 #include <linux/mlx4/srq.h> 564 struct mlx4_ib_srq *srq; local 627 srq = to_mibsrq(msrq); 658 wc->wr_id = srq->wrid[wqe_ctr]; 659 mlx4_ib_free_srq_wqe(srq, wqe_ctr); 660 } else if ((*cur_qp)->ibqp.srq) { 661 srq = to_msrq((*cur_qp)->ibqp.srq); 663 wc->wr_id = srq->wrid[wqe_ctr]; 664 mlx4_ib_free_srq_wqe(srq, wqe_ct 801 __mlx4_ib_cq_clean(struct mlx4_ib_cq *cq, u32 qpn, struct mlx4_ib_srq *srq) argument 856 mlx4_ib_cq_clean(struct mlx4_ib_cq *cq, u32 qpn, struct mlx4_ib_srq *srq) argument [all...] |
/freebsd-9.3-release/contrib/ofed/libmlx4/src/ |
H A D | srq.c | 46 static void *get_wqe(struct mlx4_srq *srq, int n) argument 48 return srq->buf.buf + (n << srq->wqe_shift); 51 void mlx4_free_srq_wqe(struct mlx4_srq *srq, int ind) argument 55 pthread_spin_lock(&srq->lock); 57 next = get_wqe(srq, srq->tail); 59 srq->tail = ind; 61 pthread_spin_unlock(&srq->lock); 68 struct mlx4_srq *srq local 127 mlx4_alloc_srq_buf(struct ibv_pd *pd, struct ibv_srq_attr *attr, struct mlx4_srq *srq) argument 187 mlx4_store_xrc_srq(struct mlx4_context *ctx, uint32_t xrc_srqn, struct mlx4_srq *srq) argument [all...] |
H A D | verbs.c | 301 struct mlx4_srq *srq; local 308 srq = malloc(sizeof *srq); 309 if (!srq) 312 if (pthread_spin_init(&srq->lock, PTHREAD_PROCESS_PRIVATE)) 315 srq->max = align_queue_size(attr->attr.max_wr + 1); 316 srq->max_gs = attr->attr.max_sge; 317 srq->counter = 0; 319 if (mlx4_alloc_srq_buf(pd, &attr->attr, srq)) 322 srq 354 mlx4_modify_srq(struct ibv_srq *srq, struct ibv_srq_attr *attr, enum ibv_srq_attr_mask attr_mask) argument 363 mlx4_query_srq(struct ibv_srq *srq, struct ibv_srq_attr *attr) argument 373 struct mlx4_srq *srq = to_msrq(ibsrq); local 391 srq->srqn, srq); local 750 struct mlx4_srq *srq; local [all...] |
H A D | cq.c | 197 struct mlx4_srq *srq = NULL; local 232 srq = mlx4_find_xrc_srq(to_mctx(cq->ibv_cq.context), srqn); 233 if (!srq) 255 } else if (srq) { 257 wc->wr_id = srq->wrid[wqe_index]; 258 mlx4_free_srq_wqe(srq, wqe_index); 259 } else if ((*cur_qp)->ibv_qp.srq) { 260 srq = to_msrq((*cur_qp)->ibv_qp.srq); 262 wc->wr_id = srq 398 __mlx4_cq_clean(struct mlx4_cq *cq, uint32_t qpn, struct mlx4_srq *srq) argument 455 mlx4_cq_clean(struct mlx4_cq *cq, uint32_t qpn, struct mlx4_srq *srq) argument [all...] |
H A D | mlx4.h | 331 return to_mxxx(srq, srq); 378 void __mlx4_cq_clean(struct mlx4_cq *cq, uint32_t qpn, struct mlx4_srq *srq); 379 void mlx4_cq_clean(struct mlx4_cq *cq, uint32_t qpn, struct mlx4_srq *srq); 385 int mlx4_modify_srq(struct ibv_srq *srq, 388 int mlx4_query_srq(struct ibv_srq *srq, 390 int mlx4_destroy_srq(struct ibv_srq *srq); 392 struct mlx4_srq *srq); 393 void mlx4_free_srq_wqe(struct mlx4_srq *srq, int ind); 399 struct mlx4_srq *srq); [all...] |
/freebsd-9.3-release/sys/ofed/drivers/net/mlx4/ |
H A D | srq.c | 37 #include <linux/mlx4/srq.h> 65 struct mlx4_srq *srq; local 69 srq = radix_tree_lookup(&dev->srq_table_tree, 71 if (srq) 72 atomic_inc(&srq->refcount); 76 if (!srq) { 81 srq->event(srq, event_type); 83 if (atomic_dec_and_test(&srq->refcount)) 84 complete(&srq 115 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 192 mlx4_srq_invalidate(struct mlx4_dev *dev, struct mlx4_srq *srq) argument 202 mlx4_srq_remove(struct mlx4_dev *dev, struct mlx4_srq *srq) argument 212 mlx4_srq_free(struct mlx4_dev *dev, struct mlx4_srq *srq) argument 225 mlx4_srq_arm(struct mlx4_dev *dev, struct mlx4_srq *srq, int limit_watermark) argument 231 mlx4_srq_query(struct mlx4_dev *dev, struct mlx4_srq *srq, int *limit_watermark) argument [all...] |
H A D | Makefile | 4 mr.o pd.o port.o profile.o qp.o reset.o sense.o srq.o xrcd.o
|
/freebsd-9.3-release/sys/ofed/include/linux/mlx4/ |
H A D | srq.h | 45 void mlx4_srq_invalidate(struct mlx4_dev *dev, struct mlx4_srq *srq); 46 void mlx4_srq_remove(struct mlx4_dev *dev, struct mlx4_srq *srq);
|
/freebsd-9.3-release/contrib/ofed/libibverbs/src/ |
H A D | verbs.c | 359 struct ibv_srq *srq; local 364 srq = pd->context->ops.create_srq(pd, srq_init_attr); 365 if (srq) { 366 srq->context = pd->context; 367 srq->srq_context = srq_init_attr->srq_context; 368 srq->pd = pd; 369 srq->xrc_domain = NULL; 370 srq->xrc_cq = NULL; 371 srq->xrc_srq_num = 0; 372 srq 386 struct ibv_srq *srq; local 407 __ibv_modify_srq(struct ibv_srq *srq, struct ibv_srq_attr *srq_attr, int srq_attr_mask) argument 415 __ibv_query_srq(struct ibv_srq *srq, struct ibv_srq_attr *srq_attr) argument 421 __ibv_destroy_srq(struct ibv_srq *srq) argument [all...] |
H A D | compat-1_0.c | 79 struct ibv_srq_1_0 *srq; member in struct:ibv_qp_init_attr_1_0 125 struct ibv_srq_1_0 *srq; member in struct:ibv_qp_1_0 189 int (*modify_srq)(struct ibv_srq *srq, 192 int (*query_srq)(struct ibv_srq *srq, 194 int (*destroy_srq)(struct ibv_srq *srq); 195 int (*post_srq_recv)(struct ibv_srq_1_0 *srq, 303 static int post_srq_recv_wrapper_1_0(struct ibv_srq_1_0 *srq, struct ibv_recv_wr_1_0 *wr, argument 324 ret = srq->context->real_context->ops.post_srq_recv(srq->real_srq, head_wr, 488 event->element.srq 714 struct ibv_srq_1_0 *srq; local 737 __ibv_modify_srq_1_0(struct ibv_srq_1_0 *srq, struct ibv_srq_attr *srq_attr, int srq_attr_mask) argument 745 __ibv_query_srq_1_0(struct ibv_srq_1_0 *srq, struct ibv_srq_attr *srq_attr) argument 751 __ibv_destroy_srq_1_0(struct ibv_srq_1_0 *srq) argument [all...] |
H A D | device.c | 215 event->element.srq = (void *) (uintptr_t) ev.element; 266 struct ibv_srq *srq = event->element.srq; local 268 pthread_mutex_lock(&srq->mutex); 269 ++srq->events_completed; 270 pthread_cond_signal(&srq->cond); 271 pthread_mutex_unlock(&srq->mutex);
|
/freebsd-9.3-release/sys/contrib/rdma/ |
H A D | rdma_verbs.c | 221 struct ib_srq *srq; local 226 srq = pd->device->create_srq(pd, srq_init_attr, NULL); 228 if (!IS_ERR(srq)) { 229 srq->device = pd->device; 230 srq->pd = pd; 231 srq->uobject = NULL; 232 srq->event_handler = srq_init_attr->event_handler; 233 srq->srq_context = srq_init_attr->srq_context; 235 atomic_store_rel_int(&srq->usecnt, 0); 238 return srq; 241 ib_modify_srq(struct ib_srq *srq, struct ib_srq_attr *srq_attr, enum ib_srq_attr_mask srq_attr_mask) argument 248 ib_query_srq(struct ib_srq *srq, struct ib_srq_attr *srq_attr) argument 255 ib_destroy_srq(struct ib_srq *srq) argument 573 struct ib_srq *srq; local [all...] |
/freebsd-9.3-release/sys/ofed/drivers/infiniband/core/ |
H A D | verbs.c | 240 struct ib_srq *srq; local 245 srq = pd->device->create_srq(pd, srq_init_attr, NULL); 247 if (!IS_ERR(srq)) { 248 srq->device = pd->device; 249 srq->pd = pd; 250 srq->uobject = NULL; 251 srq->event_handler = srq_init_attr->event_handler; 252 srq->srq_context = srq_init_attr->srq_context; 253 srq->xrc_cq = NULL; 254 srq 268 struct ib_srq *srq; local 293 ib_modify_srq(struct ib_srq *srq, struct ib_srq_attr *srq_attr, enum ib_srq_attr_mask srq_attr_mask) argument 303 ib_query_srq(struct ib_srq *srq, struct ib_srq_attr *srq_attr) argument 311 ib_destroy_srq(struct ib_srq *srq) argument 695 struct ib_srq *srq; local [all...] |
/freebsd-9.3-release/contrib/ofed/usr.lib/libmlx4/ |
H A D | Makefile | 17 SRCS= buf.c cq.c dbrec.c mlx4.c qp.c srq.c verbs.c
|
/freebsd-9.3-release/contrib/ofed/usr.lib/libmthca/ |
H A D | Makefile | 17 SRCS= ah.c buf.c cq.c memfree.c mthca.c qp.c srq.c verbs.c
|
/freebsd-9.3-release/sys/modules/mlx4ib/ |
H A D | Makefile | 8 SRCS+= ah.c cq.c doorbell.c mad.c main.c mr.c qp.c srq.c wc.c
|
/freebsd-9.3-release/contrib/ofed/libibverbs/include/infiniband/ |
H A D | driver.h | 99 struct ibv_srq *srq, struct ibv_srq_init_attr *attr, 103 struct ibv_srq *srq, struct ibv_srq_init_attr *attr, 107 int ibv_cmd_modify_srq(struct ibv_srq *srq, 111 int ibv_cmd_query_srq(struct ibv_srq *srq, 114 int ibv_cmd_destroy_srq(struct ibv_srq *srq); 132 int ibv_cmd_post_srq_recv(struct ibv_srq *srq, struct ibv_recv_wr *wr,
|
H A D | verbs.h | 225 struct ibv_srq *srq; member in union:ibv_async_event::__anon3865 430 struct ibv_srq *srq; member in struct:ibv_qp_init_attr 594 struct ibv_srq *srq; member in struct:ibv_qp 716 int (*modify_srq)(struct ibv_srq *srq, 719 int (*query_srq)(struct ibv_srq *srq, 721 int (*destroy_srq)(struct ibv_srq *srq); 722 int (*post_srq_recv)(struct ibv_srq *srq, 1006 * @srq: The SRQ to modify. 1016 int ibv_modify_srq(struct ibv_srq *srq, 1023 * @srq 1041 ibv_post_srq_recv(struct ibv_srq *srq, struct ibv_recv_wr *recv_wr, struct ibv_recv_wr **bad_recv_wr) argument [all...] |