Lines Matching refs:srq
267 static void put_srq_read(struct ib_srq *srq) in put_srq_read() argument
269 put_uobj_read(srq->uobject); in put_srq_read()
1635 struct ib_srq *srq = NULL; in ib_uverbs_create_qp() local
1672 srq = idr_read_srq(cmd.srq_handle, file->ucontext); in ib_uverbs_create_qp()
1673 if (!srq || srq->srq_type != IB_SRQT_BASIC) { in ib_uverbs_create_qp()
1703 attr.srq = srq; in ib_uverbs_create_qp()
1735 qp->srq = attr.srq; in ib_uverbs_create_qp()
1744 if (attr.srq) in ib_uverbs_create_qp()
1745 atomic_inc(&attr.srq->usecnt); in ib_uverbs_create_qp()
1782 if (srq) in ib_uverbs_create_qp()
1783 put_srq_read(srq); in ib_uverbs_create_qp()
1810 if (srq) in ib_uverbs_create_qp()
1811 put_srq_read(srq); in ib_uverbs_create_qp()
2487 struct ib_srq *srq; in ib_uverbs_post_srq_recv() local
2499 srq = idr_read_srq(cmd.srq_handle, file->ucontext); in ib_uverbs_post_srq_recv()
2500 if (!srq) in ib_uverbs_post_srq_recv()
2504 ret = srq->device->post_srq_recv(srq, wr, &bad_wr); in ib_uverbs_post_srq_recv()
2506 put_srq_read(srq); in ib_uverbs_post_srq_recv()
2993 struct ib_srq *srq; in __uverbs_create_xsrq() local
3038 srq = pd->device->create_srq(pd, &attr, udata); in __uverbs_create_xsrq()
3039 if (IS_ERR(srq)) { in __uverbs_create_xsrq()
3040 ret = PTR_ERR(srq); in __uverbs_create_xsrq()
3044 srq->device = pd->device; in __uverbs_create_xsrq()
3045 srq->pd = pd; in __uverbs_create_xsrq()
3046 srq->srq_type = cmd->srq_type; in __uverbs_create_xsrq()
3047 srq->uobject = &obj->uevent.uobject; in __uverbs_create_xsrq()
3048 srq->event_handler = attr.event_handler; in __uverbs_create_xsrq()
3049 srq->srq_context = attr.srq_context; in __uverbs_create_xsrq()
3052 srq->ext.xrc.cq = attr.ext.xrc.cq; in __uverbs_create_xsrq()
3053 srq->ext.xrc.xrcd = attr.ext.xrc.xrcd; in __uverbs_create_xsrq()
3059 atomic_set(&srq->usecnt, 0); in __uverbs_create_xsrq()
3061 obj->uevent.uobject.object = srq; in __uverbs_create_xsrq()
3071 resp.srqn = srq->ext.xrc.srq_num; in __uverbs_create_xsrq()
3099 ib_destroy_srq(srq); in __uverbs_create_xsrq()
3185 struct ib_srq *srq; in ib_uverbs_modify_srq() local
3195 srq = idr_read_srq(cmd.srq_handle, file->ucontext); in ib_uverbs_modify_srq()
3196 if (!srq) in ib_uverbs_modify_srq()
3202 ret = srq->device->modify_srq(srq, &attr, cmd.attr_mask, &udata); in ib_uverbs_modify_srq()
3204 put_srq_read(srq); in ib_uverbs_modify_srq()
3216 struct ib_srq *srq; in ib_uverbs_query_srq() local
3225 srq = idr_read_srq(cmd.srq_handle, file->ucontext); in ib_uverbs_query_srq()
3226 if (!srq) in ib_uverbs_query_srq()
3229 ret = ib_query_srq(srq, &attr); in ib_uverbs_query_srq()
3231 put_srq_read(srq); in ib_uverbs_query_srq()
3256 struct ib_srq *srq; in ib_uverbs_destroy_srq() local
3268 srq = uobj->object; in ib_uverbs_destroy_srq()
3270 srq_type = srq->srq_type; in ib_uverbs_destroy_srq()
3272 ret = ib_destroy_srq(srq); in ib_uverbs_destroy_srq()