diff options
author | Trond Myklebust <trond.myklebust@primarydata.com> | 2017-08-20 19:04:12 +0200 |
---|---|---|
committer | Trond Myklebust <trond.myklebust@primarydata.com> | 2017-08-20 19:04:12 +0200 |
commit | 7af7a5963c40d8ed853d1004701c73a221d94644 (patch) | |
tree | 23b5f9454fc911929af783887e56d433995e7344 /net | |
parent | Merge branch 'writeback' (diff) | |
parent | NFS: Fix NFSv2 security settings (diff) | |
download | linux-7af7a5963c40d8ed853d1004701c73a221d94644.tar.xz linux-7af7a5963c40d8ed853d1004701c73a221d94644.zip |
Merge branch 'bugfixes'
Diffstat (limited to 'net')
-rw-r--r-- | net/sunrpc/clnt.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/net/sunrpc/clnt.c b/net/sunrpc/clnt.c index 2e49d1f892b7..69a9e5953744 100644 --- a/net/sunrpc/clnt.c +++ b/net/sunrpc/clnt.c @@ -1903,6 +1903,14 @@ call_connect_status(struct rpc_task *task) task->tk_status = 0; switch (status) { case -ECONNREFUSED: + /* A positive refusal suggests a rebind is needed. */ + if (RPC_IS_SOFTCONN(task)) + break; + if (clnt->cl_autobind) { + rpc_force_rebind(clnt); + task->tk_action = call_bind; + return; + } case -ECONNRESET: case -ECONNABORTED: case -ENETUNREACH: |