diff options
author | Trond Myklebust <Trond.Myklebust@netapp.com> | 2012-05-31 15:26:38 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2012-06-22 11:34:13 -0700 |
commit | 00c4792f7501a6c761c47c5a7c0261e309e61949 (patch) | |
tree | 9ecd56f59909c799720b08bf35a6e489cd5e56b1 /net/sunrpc | |
parent | 2faa2a1e6b5bde69fcc49f10b7f502fc0aaf2c2b (diff) |
NFSv4.1: Fix a request leak on the back channel
commit b3b02ae5865c2dcd506322e0fc6def59a042e72f upstream.
If the call to svc_process_common() fails, then the request
needs to be freed before we can exit bc_svc_process.
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'net/sunrpc')
-rw-r--r-- | net/sunrpc/svc.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/net/sunrpc/svc.c b/net/sunrpc/svc.c index ce5f111fe32..54c59ab3b10 100644 --- a/net/sunrpc/svc.c +++ b/net/sunrpc/svc.c @@ -1302,7 +1302,8 @@ bc_svc_process(struct svc_serv *serv, struct rpc_rqst *req, sizeof(req->rq_snd_buf)); return bc_send(req); } else { - /* Nothing to do to drop request */ + /* drop request */ + xprt_free_bc_request(req); return 0; } } |