diff options
Diffstat (limited to 'net/sunrpc/clnt.c')
-rw-r--r-- | net/sunrpc/clnt.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/net/sunrpc/clnt.c b/net/sunrpc/clnt.c index 0edada973434..5a1b8fa9ca13 100644 --- a/net/sunrpc/clnt.c +++ b/net/sunrpc/clnt.c | |||
@@ -1798,10 +1798,6 @@ call_connect_status(struct rpc_task *task) | |||
1798 | trace_rpc_connect_status(task, status); | 1798 | trace_rpc_connect_status(task, status); |
1799 | task->tk_status = 0; | 1799 | task->tk_status = 0; |
1800 | switch (status) { | 1800 | switch (status) { |
1801 | /* if soft mounted, test if we've timed out */ | ||
1802 | case -ETIMEDOUT: | ||
1803 | task->tk_action = call_timeout; | ||
1804 | return; | ||
1805 | case -ECONNREFUSED: | 1801 | case -ECONNREFUSED: |
1806 | case -ECONNRESET: | 1802 | case -ECONNRESET: |
1807 | case -ECONNABORTED: | 1803 | case -ECONNABORTED: |
@@ -1812,7 +1808,9 @@ call_connect_status(struct rpc_task *task) | |||
1812 | if (RPC_IS_SOFTCONN(task)) | 1808 | if (RPC_IS_SOFTCONN(task)) |
1813 | break; | 1809 | break; |
1814 | case -EAGAIN: | 1810 | case -EAGAIN: |
1815 | task->tk_action = call_bind; | 1811 | /* Check for timeouts before looping back to call_bind */ |
1812 | case -ETIMEDOUT: | ||
1813 | task->tk_action = call_timeout; | ||
1816 | return; | 1814 | return; |
1817 | case 0: | 1815 | case 0: |
1818 | clnt->cl_stats->netreconn++; | 1816 | clnt->cl_stats->netreconn++; |