summaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authorBryan Schumaker <bjschuma@netapp.com>2012-03-27 13:46:32 -0400
committerTrond Myklebust <Trond.Myklebust@netapp.com>2012-03-27 16:33:35 -0400
commit864cf9bf99f62d2095c8e6cc3a87af80b263984e (patch)
tree212665144bc8140dc177c41954d0eb691b602d83 /net
parentd44fc387997c0750125cfb0c2c803a3171b649f4 (diff)
downloadlinux-864cf9bf99f62d2095c8e6cc3a87af80b263984e.tar.gz
linux-864cf9bf99f62d2095c8e6cc3a87af80b263984e.tar.bz2
linux-864cf9bf99f62d2095c8e6cc3a87af80b263984e.zip
SUNRPC: Use the already looked-up xprt in rpcb_getport_async()
rbcb_getport_async() was looking up the rpc_xprt (reference++) and then later looking it up again (reference++) to pass through the rpcbind_args. The xprt would only be dereferenced once, when we were done with the rpcbind_args (reference--). This leaves an extra reference to the transport that would never go away. Signed-off-by: Bryan Schumaker <bjschuma@netapp.com> Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'net')
-rw-r--r--net/sunrpc/rpcb_clnt.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/sunrpc/rpcb_clnt.c b/net/sunrpc/rpcb_clnt.c
index 207a74696c9f..78ac39fd9fe7 100644
--- a/net/sunrpc/rpcb_clnt.c
+++ b/net/sunrpc/rpcb_clnt.c
@@ -734,7 +734,7 @@ void rpcb_getport_async(struct rpc_task *task)
map->r_vers = clnt->cl_vers;
map->r_prot = xprt->prot;
map->r_port = 0;
- map->r_xprt = xprt_get(xprt);
+ map->r_xprt = xprt;
map->r_status = -EIO;
switch (bind_version) {