Lines Matching refs:srq

455 	struct ib_srq *srq;  in ib_create_srq()  local
460 srq = pd->device->create_srq(pd, srq_init_attr, NULL); in ib_create_srq()
462 if (!IS_ERR(srq)) { in ib_create_srq()
463 srq->device = pd->device; in ib_create_srq()
464 srq->pd = pd; in ib_create_srq()
465 srq->uobject = NULL; in ib_create_srq()
466 srq->event_handler = srq_init_attr->event_handler; in ib_create_srq()
467 srq->srq_context = srq_init_attr->srq_context; in ib_create_srq()
468 srq->srq_type = srq_init_attr->srq_type; in ib_create_srq()
469 if (srq->srq_type == IB_SRQT_XRC) { in ib_create_srq()
470 srq->ext.xrc.xrcd = srq_init_attr->ext.xrc.xrcd; in ib_create_srq()
471 srq->ext.xrc.cq = srq_init_attr->ext.xrc.cq; in ib_create_srq()
472 atomic_inc(&srq->ext.xrc.xrcd->usecnt); in ib_create_srq()
473 atomic_inc(&srq->ext.xrc.cq->usecnt); in ib_create_srq()
476 atomic_set(&srq->usecnt, 0); in ib_create_srq()
479 return srq; in ib_create_srq()
483 int ib_modify_srq(struct ib_srq *srq, in ib_modify_srq() argument
487 return srq->device->modify_srq ? in ib_modify_srq()
488 srq->device->modify_srq(srq, srq_attr, srq_attr_mask, NULL) : in ib_modify_srq()
493 int ib_query_srq(struct ib_srq *srq, in ib_query_srq() argument
496 return srq->device->query_srq ? in ib_query_srq()
497 srq->device->query_srq(srq, srq_attr) : -ENOSYS; in ib_query_srq()
501 int ib_destroy_srq(struct ib_srq *srq) in ib_destroy_srq() argument
509 if (atomic_read(&srq->usecnt)) in ib_destroy_srq()
512 pd = srq->pd; in ib_destroy_srq()
513 srq_type = srq->srq_type; in ib_destroy_srq()
515 xrcd = srq->ext.xrc.xrcd; in ib_destroy_srq()
516 cq = srq->ext.xrc.cq; in ib_destroy_srq()
519 ret = srq->device->destroy_srq(srq); in ib_destroy_srq()
622 qp->srq = NULL; in ib_create_qp()
639 qp->srq = NULL; in ib_create_qp()
643 qp->srq = qp_init_attr->srq; in ib_create_qp()
644 if (qp->srq) in ib_create_qp()
645 atomic_inc(&qp_init_attr->srq->usecnt); in ib_create_qp()
1122 struct ib_srq *srq; in ib_destroy_qp() local
1134 srq = qp->srq; in ib_destroy_qp()
1144 if (srq) in ib_destroy_qp()
1145 atomic_dec(&srq->usecnt); in ib_destroy_qp()