aboutsummaryrefslogtreecommitdiffstats
path: root/fs/nfs
diff options
context:
space:
mode:
authorChuck Lever <chuck.lever@oracle.com>2013-10-17 14:13:07 -0400
committerTrond Myklebust <Trond.Myklebust@netapp.com>2013-10-28 15:24:55 -0400
commitf1478c13c0a606b960becaa70e82065835b16fbf (patch)
treef77e48f59372555bbc89ddf84030c11c0d9ac5bb /fs/nfs
parentc9fdeb280b8cc511c6730db9ab3973331ea344e0 (diff)
NFS: Re-use exit code in nfs4_async_handle_error()
Clean up. Signed-off-by: Chuck Lever <chuck.lever@oracle.com> Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs/nfs')
-rw-r--r--fs/nfs/nfs4proc.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c
index c71c16e0ac22..2614b46a0cc5 100644
--- a/fs/nfs/nfs4proc.c
+++ b/fs/nfs/nfs4proc.c
@@ -4750,19 +4750,15 @@ nfs4_async_handle_error(struct rpc_task *task, const struct nfs_server *server,
4750 dprintk("%s ERROR %d, Reset session\n", __func__, 4750 dprintk("%s ERROR %d, Reset session\n", __func__,
4751 task->tk_status); 4751 task->tk_status);
4752 nfs4_schedule_session_recovery(clp->cl_session, task->tk_status); 4752 nfs4_schedule_session_recovery(clp->cl_session, task->tk_status);
4753 task->tk_status = 0; 4753 goto restart_call;
4754 return -EAGAIN;
4755#endif /* CONFIG_NFS_V4_1 */ 4754#endif /* CONFIG_NFS_V4_1 */
4756 case -NFS4ERR_DELAY: 4755 case -NFS4ERR_DELAY:
4757 nfs_inc_server_stats(server, NFSIOS_DELAY); 4756 nfs_inc_server_stats(server, NFSIOS_DELAY);
4758 case -NFS4ERR_GRACE: 4757 case -NFS4ERR_GRACE:
4759 rpc_delay(task, NFS4_POLL_RETRY_MAX); 4758 rpc_delay(task, NFS4_POLL_RETRY_MAX);
4760 task->tk_status = 0;
4761 return -EAGAIN;
4762 case -NFS4ERR_RETRY_UNCACHED_REP: 4759 case -NFS4ERR_RETRY_UNCACHED_REP:
4763 case -NFS4ERR_OLD_STATEID: 4760 case -NFS4ERR_OLD_STATEID:
4764 task->tk_status = 0; 4761 goto restart_call;
4765 return -EAGAIN;
4766 } 4762 }
4767 task->tk_status = nfs4_map_errors(task->tk_status); 4763 task->tk_status = nfs4_map_errors(task->tk_status);
4768 return 0; 4764 return 0;
@@ -4773,6 +4769,7 @@ wait_on_recovery:
4773 rpc_sleep_on(&clp->cl_rpcwaitq, task, NULL); 4769 rpc_sleep_on(&clp->cl_rpcwaitq, task, NULL);
4774 if (test_bit(NFS4CLNT_MANAGER_RUNNING, &clp->cl_state) == 0) 4770 if (test_bit(NFS4CLNT_MANAGER_RUNNING, &clp->cl_state) == 0)
4775 rpc_wake_up_queued_task(&clp->cl_rpcwaitq, task); 4771 rpc_wake_up_queued_task(&clp->cl_rpcwaitq, task);
4772restart_call:
4776 task->tk_status = 0; 4773 task->tk_status = 0;
4777 return -EAGAIN; 4774 return -EAGAIN;
4778} 4775}