Commit 2bb7dd5d authored by Trond Myklebust's avatar Trond Myklebust Committed by Luis Henriques

SUNRPC: Fix a memory leak in the backchannel code

commit 88de6af2 upstream.

req->rq_private_buf isn't initialised when xprt_setup_backchannel calls
xprt_free_allocation.

Fixes: fb7a0b9a ("nfs41: New backchannel helper routines")
Signed-off-by: default avatarTrond Myklebust <trond.myklebust@primarydata.com>
Signed-off-by: default avatarLuis Henriques <luis.henriques@canonical.com>
parent 19dd3b1d
...@@ -60,7 +60,7 @@ static void xprt_free_allocation(struct rpc_rqst *req) ...@@ -60,7 +60,7 @@ static void xprt_free_allocation(struct rpc_rqst *req)
dprintk("RPC: free allocations for req= %p\n", req); dprintk("RPC: free allocations for req= %p\n", req);
WARN_ON_ONCE(test_bit(RPC_BC_PA_IN_USE, &req->rq_bc_pa_state)); WARN_ON_ONCE(test_bit(RPC_BC_PA_IN_USE, &req->rq_bc_pa_state));
xbufp = &req->rq_private_buf; xbufp = &req->rq_rcv_buf;
free_page((unsigned long)xbufp->head[0].iov_base); free_page((unsigned long)xbufp->head[0].iov_base);
xbufp = &req->rq_snd_buf; xbufp = &req->rq_snd_buf;
free_page((unsigned long)xbufp->head[0].iov_base); free_page((unsigned long)xbufp->head[0].iov_base);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment