Lines Matching defs:srq
226 struct ib_srq *srq;
231 srq = pd->device->create_srq(pd, srq_init_attr, NULL);
233 if (!IS_ERR(srq)) {
234 srq->device = pd->device;
235 srq->pd = pd;
236 srq->uobject = NULL;
237 srq->event_handler = srq_init_attr->event_handler;
238 srq->srq_context = srq_init_attr->srq_context;
240 atomic_set(&srq->usecnt, 0);
243 return srq;
247 int ib_modify_srq(struct ib_srq *srq,
251 return srq->device->modify_srq(srq, srq_attr, srq_attr_mask, NULL);
255 int ib_query_srq(struct ib_srq *srq,
258 return srq->device->query_srq ?
259 srq->device->query_srq(srq, srq_attr) : -ENOSYS;
263 int ib_destroy_srq(struct ib_srq *srq)
268 if (atomic_read(&srq->usecnt))
271 pd = srq->pd;
273 ret = srq->device->destroy_srq(srq);
295 qp->srq = qp_init_attr->srq;
303 if (qp_init_attr->srq)
304 atomic_inc(&qp_init_attr->srq->usecnt);
586 struct ib_srq *srq;
592 srq = qp->srq;
599 if (srq)
600 atomic_dec(&srq->usecnt);