NFSv4.1: Fix a request leak on the back channel
authorTrond Myklebust <Trond.Myklebust@netapp.com>
Thu, 31 May 2012 19:26:38 +0000 (15:26 -0400)
committerTrond Myklebust <Trond.Myklebust@netapp.com>
Thu, 31 May 2012 19:32:16 +0000 (15:32 -0400)
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>
Cc: stable@vger.kernel.org
net/sunrpc/svc.c

index 017c011..074df5a 100644 (file)
@@ -1377,7 +1377,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;
        }
 }