Lines Matching refs:qp
50 static int rxe_check_bind_mw(struct rxe_qp *qp, struct rxe_send_wqe *wqe,
76 if (unlikely(qp->pd != to_rpd(mw->ibmw.pd))) {
78 "attempt to bind type 2 MW with qp with different PD\n");
135 static void rxe_do_bind_mw(struct rxe_qp *qp, struct rxe_send_wqe *wqe,
159 rxe_get(qp);
160 mw->qp = qp;
164 int rxe_bind_mw(struct rxe_qp *qp, struct rxe_send_wqe *wqe)
169 struct rxe_dev *rxe = to_rdev(qp->ibqp.device);
208 ret = rxe_check_bind_mw(qp, wqe, mw, mr, access);
212 rxe_do_bind_mw(qp, wqe, mw, mr, access);
224 static int rxe_check_invalidate_mw(struct rxe_qp *qp, struct rxe_mw *mw)
238 struct rxe_qp *qp;
242 qp = mw->qp;
243 mw->qp = NULL;
244 rxe_put(qp);
258 int rxe_invalidate_mw(struct rxe_qp *qp, u32 rkey)
260 struct rxe_dev *rxe = to_rdev(qp->ibqp.device);
277 ret = rxe_check_invalidate_mw(qp, mw);
290 struct rxe_mw *rxe_lookup_mw(struct rxe_qp *qp, int access, u32 rkey)
292 struct rxe_dev *rxe = to_rdev(qp->ibqp.device);
293 struct rxe_pd *pd = to_rpd(qp->ibqp.pd);
302 (mw->ibmw.type == IB_MW_TYPE_2 && mw->qp != qp) ||
327 if (mw->qp) {
328 struct rxe_qp *qp = mw->qp;
330 mw->qp = NULL;
331 rxe_put(qp);