Lines Matching refs:rep
527 struct rpcrdma_rep *rep = req->rl_reply; in rpcrdma_sendctx_done() local
529 rpcrdma_complete_rqst(rep); in rpcrdma_sendctx_done()
530 rep->rr_rxprt->rx_stats.reply_waits_for_send++; in rpcrdma_sendctx_done()
1125 rpcrdma_is_bcall(struct rpcrdma_xprt *r_xprt, struct rpcrdma_rep *rep) in rpcrdma_is_bcall() argument
1128 struct xdr_stream *xdr = &rep->rr_stream; in rpcrdma_is_bcall()
1131 if (rep->rr_proc != rdma_msg) in rpcrdma_is_bcall()
1146 if (*p++ != rep->rr_xid) in rpcrdma_is_bcall()
1158 rpcrdma_bc_receive_call(r_xprt, rep); in rpcrdma_is_bcall()
1261 rpcrdma_decode_msg(struct rpcrdma_xprt *r_xprt, struct rpcrdma_rep *rep, in rpcrdma_decode_msg() argument
1264 struct xdr_stream *xdr = &rep->rr_stream; in rpcrdma_decode_msg()
1291 rpcrdma_decode_nomsg(struct rpcrdma_xprt *r_xprt, struct rpcrdma_rep *rep) in rpcrdma_decode_nomsg() argument
1293 struct xdr_stream *xdr = &rep->rr_stream; in rpcrdma_decode_nomsg()
1316 rpcrdma_decode_error(struct rpcrdma_xprt *r_xprt, struct rpcrdma_rep *rep, in rpcrdma_decode_error() argument
1319 struct xdr_stream *xdr = &rep->rr_stream; in rpcrdma_decode_error()
1351 void rpcrdma_unpin_rqst(struct rpcrdma_rep *rep) in rpcrdma_unpin_rqst() argument
1353 struct rpc_xprt *xprt = &rep->rr_rxprt->rx_xprt; in rpcrdma_unpin_rqst()
1354 struct rpc_rqst *rqst = rep->rr_rqst; in rpcrdma_unpin_rqst()
1358 rep->rr_rqst = NULL; in rpcrdma_unpin_rqst()
1373 void rpcrdma_complete_rqst(struct rpcrdma_rep *rep) in rpcrdma_complete_rqst() argument
1375 struct rpcrdma_xprt *r_xprt = rep->rr_rxprt; in rpcrdma_complete_rqst()
1377 struct rpc_rqst *rqst = rep->rr_rqst; in rpcrdma_complete_rqst()
1380 switch (rep->rr_proc) { in rpcrdma_complete_rqst()
1382 status = rpcrdma_decode_msg(r_xprt, rep, rqst); in rpcrdma_complete_rqst()
1385 status = rpcrdma_decode_nomsg(r_xprt, rep); in rpcrdma_complete_rqst()
1388 status = rpcrdma_decode_error(r_xprt, rep, rqst); in rpcrdma_complete_rqst()
1404 trace_xprtrdma_reply_hdr_err(rep); in rpcrdma_complete_rqst()
1426 void rpcrdma_reply_handler(struct rpcrdma_rep *rep) in rpcrdma_reply_handler() argument
1428 struct rpcrdma_xprt *r_xprt = rep->rr_rxprt; in rpcrdma_reply_handler()
1443 xdr_init_decode(&rep->rr_stream, &rep->rr_hdrbuf, in rpcrdma_reply_handler()
1444 rep->rr_hdrbuf.head[0].iov_base, NULL); in rpcrdma_reply_handler()
1445 p = xdr_inline_decode(&rep->rr_stream, 4 * sizeof(*p)); in rpcrdma_reply_handler()
1448 rep->rr_xid = *p++; in rpcrdma_reply_handler()
1449 rep->rr_vers = *p++; in rpcrdma_reply_handler()
1451 rep->rr_proc = *p++; in rpcrdma_reply_handler()
1453 if (rep->rr_vers != rpcrdma_version) in rpcrdma_reply_handler()
1456 if (rpcrdma_is_bcall(r_xprt, rep)) in rpcrdma_reply_handler()
1463 rqst = xprt_lookup_rqst(xprt, rep->rr_xid); in rpcrdma_reply_handler()
1481 req->rl_reply = rep; in rpcrdma_reply_handler()
1482 rep->rr_rqst = rqst; in rpcrdma_reply_handler()
1484 trace_xprtrdma_reply(rqst->rq_task, rep, credits); in rpcrdma_reply_handler()
1486 if (rep->rr_wc_flags & IB_WC_WITH_INVALIDATE) in rpcrdma_reply_handler()
1487 frwr_reminv(rep, &req->rl_registered); in rpcrdma_reply_handler()
1496 trace_xprtrdma_reply_vers_err(rep); in rpcrdma_reply_handler()
1501 trace_xprtrdma_reply_rqst_err(rep); in rpcrdma_reply_handler()
1505 trace_xprtrdma_reply_short_err(rep); in rpcrdma_reply_handler()
1508 rpcrdma_rep_put(buf, rep); in rpcrdma_reply_handler()