SUNRPC: Don't call xprt_release in call refresh
Call it from call_verify() instead... Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
This commit is contained in:
@@ -1271,7 +1271,6 @@ call_refresh(struct rpc_task *task)
|
|||||||
{
|
{
|
||||||
dprint_status(task);
|
dprint_status(task);
|
||||||
|
|
||||||
xprt_release(task); /* Must do to obtain new XID */
|
|
||||||
task->tk_action = call_refreshresult;
|
task->tk_action = call_refreshresult;
|
||||||
task->tk_status = 0;
|
task->tk_status = 0;
|
||||||
task->tk_client->cl_stats->rpcauthrefresh++;
|
task->tk_client->cl_stats->rpcauthrefresh++;
|
||||||
@@ -1389,6 +1388,8 @@ call_verify(struct rpc_task *task)
|
|||||||
dprintk("RPC: %5u %s: retry stale creds\n",
|
dprintk("RPC: %5u %s: retry stale creds\n",
|
||||||
task->tk_pid, __FUNCTION__);
|
task->tk_pid, __FUNCTION__);
|
||||||
rpcauth_invalcred(task);
|
rpcauth_invalcred(task);
|
||||||
|
/* Ensure we obtain a new XID! */
|
||||||
|
xprt_release(task);
|
||||||
task->tk_action = call_refresh;
|
task->tk_action = call_refresh;
|
||||||
goto out_retry;
|
goto out_retry;
|
||||||
case RPC_AUTH_BADCRED:
|
case RPC_AUTH_BADCRED:
|
||||||
|
Reference in New Issue
Block a user