diff options
author | Trond Myklebust <Trond.Myklebust@netapp.com> | 2007-10-01 18:06:48 +0200 |
---|---|---|
committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2007-10-09 23:20:42 +0200 |
commit | 220bcc2afd7011b3e0569fc178331fa983c92c1b (patch) | |
tree | 2a9d18da02292c6c6d7b8da7f6dd6a209ea1b57d | |
parent | SUNRPC: Don't call xprt_release() if call_allocate fails (diff) | |
download | linux-220bcc2afd7011b3e0569fc178331fa983c92c1b.tar.xz linux-220bcc2afd7011b3e0569fc178331fa983c92c1b.zip |
SUNRPC: Don't call xprt_release in call refresh
Call it from call_verify() instead...
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
-rw-r--r-- | net/sunrpc/clnt.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/net/sunrpc/clnt.c b/net/sunrpc/clnt.c index e6a2678ecec3..76be83ee4b04 100644 --- a/net/sunrpc/clnt.c +++ b/net/sunrpc/clnt.c @@ -1271,7 +1271,6 @@ call_refresh(struct rpc_task *task) { dprint_status(task); - xprt_release(task); /* Must do to obtain new XID */ task->tk_action = call_refreshresult; task->tk_status = 0; task->tk_client->cl_stats->rpcauthrefresh++; @@ -1389,6 +1388,8 @@ call_verify(struct rpc_task *task) dprintk("RPC: %5u %s: retry stale creds\n", task->tk_pid, __FUNCTION__); rpcauth_invalcred(task); + /* Ensure we obtain a new XID! */ + xprt_release(task); task->tk_action = call_refresh; goto out_retry; case RPC_AUTH_BADCRED: |