svcrdma: Free context on post_recv error in send_reply
If an error is encountered trying to post a recv buffer in send_reply, free the passed in context. Return an error to the caller so it is aware that the request was not posted. Signed-off-by: Tom Tucker <tom@opengridcomputing.com>
This commit is contained in:
@@ -396,7 +396,8 @@ static int send_reply(struct svcxprt_rdma *rdma,
|
|||||||
"svcrdma: could not post a receive buffer, err=%d."
|
"svcrdma: could not post a receive buffer, err=%d."
|
||||||
"Closing transport %p.\n", ret, rdma);
|
"Closing transport %p.\n", ret, rdma);
|
||||||
set_bit(XPT_CLOSE, &rdma->sc_xprt.xpt_flags);
|
set_bit(XPT_CLOSE, &rdma->sc_xprt.xpt_flags);
|
||||||
return 0;
|
svc_rdma_put_context(ctxt, 0);
|
||||||
|
return -ENOTCONN;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Prepare the context */
|
/* Prepare the context */
|
||||||
|
Reference in New Issue
Block a user