summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKinglong Mee <kinglongmee@gmail.com>2014-03-24 11:58:16 +0800
committerJ. Bruce Fields <bfields@redhat.com>2014-03-30 10:47:35 -0400
commit47f72efa8f32e8182cd4a70d5a9a6d07651093fc (patch)
tree56313bcc33febc6e3e75ed2a65a59505603e2f08
parent2336745e87a646a3dc9570f082b85df519ee523e (diff)
downloadlinux-47f72efa8f32e8182cd4a70d5a9a6d07651093fc.tar.bz2
NFSD: Free backchannel xprt in bc_destroy
Backchannel xprt isn't freed right now. Free it in bc_destroy, and put the reference of THIS_MODULE. Signed-off-by: Kinglong Mee <kinglongmee@gmail.com> Signed-off-by: J. Bruce Fields <bfields@redhat.com>
-rw-r--r--net/sunrpc/xprtsock.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/net/sunrpc/xprtsock.c b/net/sunrpc/xprtsock.c
index 4b921a926994..63ae657f255b 100644
--- a/net/sunrpc/xprtsock.c
+++ b/net/sunrpc/xprtsock.c
@@ -2545,6 +2545,10 @@ static void bc_close(struct rpc_xprt *xprt)
static void bc_destroy(struct rpc_xprt *xprt)
{
+ dprintk("RPC: bc_destroy xprt %p\n", xprt);
+
+ xs_xprt_free(xprt);
+ module_put(THIS_MODULE);
}
static struct rpc_xprt_ops xs_local_ops = {