diff options
author | Chuck Lever <chuck.lever@oracle.com> | 2013-10-17 14:13:07 -0400 |
---|---|---|
committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2013-10-28 15:24:55 -0400 |
commit | f1478c13c0a606b960becaa70e82065835b16fbf (patch) | |
tree | f77e48f59372555bbc89ddf84030c11c0d9ac5bb /fs/nfs | |
parent | c9fdeb280b8cc511c6730db9ab3973331ea344e0 (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.c | 9 |
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); |
4772 | restart_call: | ||
4776 | task->tk_status = 0; | 4773 | task->tk_status = 0; |
4777 | return -EAGAIN; | 4774 | return -EAGAIN; |
4778 | } | 4775 | } |