xprtrdma: Delete rpcrdma_recv_buffer_put()
Clean up: The name recv_buffer_put() is a vestige of older code, and the function is just a wrapper for the newer rpcrdma_rep_put(). In most of the existing call sites, a pointer to the owning rpcrdma_buffer is already available. Signed-off-by: Chuck Lever <chuck.lever@oracle.com> Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
This commit is contained in:
parent
35d8b10a25
commit
c35ca60d49
@ -155,9 +155,11 @@ void xprt_rdma_bc_destroy(struct rpc_xprt *xprt, unsigned int reqs)
|
|||||||
void xprt_rdma_bc_free_rqst(struct rpc_rqst *rqst)
|
void xprt_rdma_bc_free_rqst(struct rpc_rqst *rqst)
|
||||||
{
|
{
|
||||||
struct rpcrdma_req *req = rpcr_to_rdmar(rqst);
|
struct rpcrdma_req *req = rpcr_to_rdmar(rqst);
|
||||||
|
struct rpcrdma_rep *rep = req->rl_reply;
|
||||||
struct rpc_xprt *xprt = rqst->rq_xprt;
|
struct rpc_xprt *xprt = rqst->rq_xprt;
|
||||||
|
struct rpcrdma_xprt *r_xprt = rpcx_to_rdmax(xprt);
|
||||||
|
|
||||||
rpcrdma_recv_buffer_put(req->rl_reply);
|
rpcrdma_rep_put(&r_xprt->rx_buf, rep);
|
||||||
req->rl_reply = NULL;
|
req->rl_reply = NULL;
|
||||||
|
|
||||||
spin_lock(&xprt->bc_pa_lock);
|
spin_lock(&xprt->bc_pa_lock);
|
||||||
|
@ -1437,7 +1437,7 @@ void rpcrdma_reply_handler(struct rpcrdma_rep *rep)
|
|||||||
|
|
||||||
req = rpcr_to_rdmar(rqst);
|
req = rpcr_to_rdmar(rqst);
|
||||||
if (unlikely(req->rl_reply))
|
if (unlikely(req->rl_reply))
|
||||||
rpcrdma_recv_buffer_put(req->rl_reply);
|
rpcrdma_rep_put(buf, req->rl_reply);
|
||||||
req->rl_reply = rep;
|
req->rl_reply = rep;
|
||||||
rep->rr_rqst = rqst;
|
rep->rr_rqst = rqst;
|
||||||
|
|
||||||
@ -1465,5 +1465,5 @@ out_shortreply:
|
|||||||
trace_xprtrdma_reply_short_err(rep);
|
trace_xprtrdma_reply_short_err(rep);
|
||||||
|
|
||||||
out:
|
out:
|
||||||
rpcrdma_recv_buffer_put(rep);
|
rpcrdma_rep_put(buf, rep);
|
||||||
}
|
}
|
||||||
|
@ -80,8 +80,6 @@ static void rpcrdma_sendctx_put_locked(struct rpcrdma_xprt *r_xprt,
|
|||||||
struct rpcrdma_sendctx *sc);
|
struct rpcrdma_sendctx *sc);
|
||||||
static int rpcrdma_reqs_setup(struct rpcrdma_xprt *r_xprt);
|
static int rpcrdma_reqs_setup(struct rpcrdma_xprt *r_xprt);
|
||||||
static void rpcrdma_reqs_reset(struct rpcrdma_xprt *r_xprt);
|
static void rpcrdma_reqs_reset(struct rpcrdma_xprt *r_xprt);
|
||||||
static void rpcrdma_rep_put(struct rpcrdma_buffer *buf,
|
|
||||||
struct rpcrdma_rep *rep);
|
|
||||||
static void rpcrdma_rep_destroy(struct rpcrdma_rep *rep);
|
static void rpcrdma_rep_destroy(struct rpcrdma_rep *rep);
|
||||||
static void rpcrdma_reps_unmap(struct rpcrdma_xprt *r_xprt);
|
static void rpcrdma_reps_unmap(struct rpcrdma_xprt *r_xprt);
|
||||||
static void rpcrdma_mrs_create(struct rpcrdma_xprt *r_xprt);
|
static void rpcrdma_mrs_create(struct rpcrdma_xprt *r_xprt);
|
||||||
@ -1036,8 +1034,13 @@ static struct rpcrdma_rep *rpcrdma_rep_get_locked(struct rpcrdma_buffer *buf)
|
|||||||
return llist_entry(node, struct rpcrdma_rep, rr_node);
|
return llist_entry(node, struct rpcrdma_rep, rr_node);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void rpcrdma_rep_put(struct rpcrdma_buffer *buf,
|
/**
|
||||||
struct rpcrdma_rep *rep)
|
* rpcrdma_rep_put - Release rpcrdma_rep back to free list
|
||||||
|
* @buf: buffer pool
|
||||||
|
* @rep: rep to release
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
void rpcrdma_rep_put(struct rpcrdma_buffer *buf, struct rpcrdma_rep *rep)
|
||||||
{
|
{
|
||||||
llist_add(&rep->rr_node, &buf->rb_free_reps);
|
llist_add(&rep->rr_node, &buf->rb_free_reps);
|
||||||
}
|
}
|
||||||
@ -1252,17 +1255,6 @@ void rpcrdma_buffer_put(struct rpcrdma_buffer *buffers, struct rpcrdma_req *req)
|
|||||||
spin_unlock(&buffers->rb_lock);
|
spin_unlock(&buffers->rb_lock);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* rpcrdma_recv_buffer_put - Release rpcrdma_rep back to free list
|
|
||||||
* @rep: rep to release
|
|
||||||
*
|
|
||||||
* Used after error conditions.
|
|
||||||
*/
|
|
||||||
void rpcrdma_recv_buffer_put(struct rpcrdma_rep *rep)
|
|
||||||
{
|
|
||||||
rpcrdma_rep_put(&rep->rr_rxprt->rx_buf, rep);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Returns a pointer to a rpcrdma_regbuf object, or NULL.
|
/* Returns a pointer to a rpcrdma_regbuf object, or NULL.
|
||||||
*
|
*
|
||||||
* xprtrdma uses a regbuf for posting an outgoing RDMA SEND, or for
|
* xprtrdma uses a regbuf for posting an outgoing RDMA SEND, or for
|
||||||
@ -1455,7 +1447,7 @@ out:
|
|||||||
|
|
||||||
rep = container_of(wr, struct rpcrdma_rep, rr_recv_wr);
|
rep = container_of(wr, struct rpcrdma_rep, rr_recv_wr);
|
||||||
wr = wr->next;
|
wr = wr->next;
|
||||||
rpcrdma_recv_buffer_put(rep);
|
rpcrdma_rep_put(buf, rep);
|
||||||
--count;
|
--count;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -481,7 +481,7 @@ void rpcrdma_mrs_refresh(struct rpcrdma_xprt *r_xprt);
|
|||||||
struct rpcrdma_req *rpcrdma_buffer_get(struct rpcrdma_buffer *);
|
struct rpcrdma_req *rpcrdma_buffer_get(struct rpcrdma_buffer *);
|
||||||
void rpcrdma_buffer_put(struct rpcrdma_buffer *buffers,
|
void rpcrdma_buffer_put(struct rpcrdma_buffer *buffers,
|
||||||
struct rpcrdma_req *req);
|
struct rpcrdma_req *req);
|
||||||
void rpcrdma_recv_buffer_put(struct rpcrdma_rep *);
|
void rpcrdma_rep_put(struct rpcrdma_buffer *buf, struct rpcrdma_rep *rep);
|
||||||
|
|
||||||
bool rpcrdma_regbuf_realloc(struct rpcrdma_regbuf *rb, size_t size,
|
bool rpcrdma_regbuf_realloc(struct rpcrdma_regbuf *rb, size_t size,
|
||||||
gfp_t flags);
|
gfp_t flags);
|
||||||
|
Loading…
Reference in New Issue
Block a user