Lines Matching refs:srq
344 struct rxe_srq *srq; in rxe_create_srq() local
358 srq = rxe_alloc(&rxe->srq_pool); in rxe_create_srq()
359 if (!srq) { in rxe_create_srq()
364 rxe_add_index(srq); in rxe_create_srq()
366 srq->pd = pd; in rxe_create_srq()
368 err = rxe_srq_from_init(rxe, srq, init, context, uresp); in rxe_create_srq()
372 return &srq->ibsrq; in rxe_create_srq()
376 rxe_drop_index(srq); in rxe_create_srq()
377 rxe_drop_ref(srq); in rxe_create_srq()
387 struct rxe_srq *srq = to_rsrq(ibsrq); in rxe_modify_srq() local
400 err = rxe_srq_chk_attr(rxe, srq, attr, mask); in rxe_modify_srq()
404 err = rxe_srq_from_attr(rxe, srq, attr, mask, &ucmd); in rxe_modify_srq()
416 struct rxe_srq *srq = to_rsrq(ibsrq); in rxe_query_srq() local
418 if (srq->error) in rxe_query_srq()
421 attr->max_wr = srq->rq.queue->buf->index_mask; in rxe_query_srq()
422 attr->max_sge = srq->rq.max_sge; in rxe_query_srq()
423 attr->srq_limit = srq->limit; in rxe_query_srq()
429 struct rxe_srq *srq = to_rsrq(ibsrq); in rxe_destroy_srq() local
431 if (srq->rq.queue) in rxe_destroy_srq()
432 rxe_queue_cleanup(srq->rq.queue); in rxe_destroy_srq()
434 rxe_drop_ref(srq->pd); in rxe_destroy_srq()
435 rxe_drop_index(srq); in rxe_destroy_srq()
436 rxe_drop_ref(srq); in rxe_destroy_srq()
446 struct rxe_srq *srq = to_rsrq(ibsrq); in rxe_post_srq_recv() local
448 spin_lock_irqsave(&srq->rq.producer_lock, flags); in rxe_post_srq_recv()
451 err = post_one_recv(&srq->rq, wr); in rxe_post_srq_recv()
457 spin_unlock_irqrestore(&srq->rq.producer_lock, flags); in rxe_post_srq_recv()
809 if (unlikely(qp->srq)) { in rxe_post_recv()