summaryrefslogtreecommitdiff
path: root/net
diff options
context:
space:
mode:
authorChuck Lever <chuck.lever@oracle.com>2014-05-28 14:34:41 (GMT)
committerAnna Schumaker <Anna.Schumaker@Netapp.com>2014-06-04 12:56:51 (GMT)
commit18906972aa1103c07869c9b43860a52e0e27e8e5 (patch)
tree02acc159b028040e97995d50f9353022e74d3081 /net
parentbfaee096deaa680195df5491eb650f81051c145d (diff)
downloadlinux-18906972aa1103c07869c9b43860a52e0e27e8e5.tar.xz
xprtrdma: Reset connection timeout after successful reconnect
If the new connection is able to make forward progress, reset the re-establish timeout. Otherwise it keeps growing even if disconnect events are rare. The same behavior as TCP is adopted: reconnect immediately if the transport instance has been able to make some forward progress. Signed-off-by: Chuck Lever <chuck.lever@oracle.com> Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
Diffstat (limited to 'net')
-rw-r--r--net/sunrpc/xprtrdma/rpc_rdma.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/net/sunrpc/xprtrdma/rpc_rdma.c b/net/sunrpc/xprtrdma/rpc_rdma.c
index dc4a826..ac65b0c 100644
--- a/net/sunrpc/xprtrdma/rpc_rdma.c
+++ b/net/sunrpc/xprtrdma/rpc_rdma.c
@@ -770,6 +770,7 @@ repost:
/* from here on, the reply is no longer an orphan */
req->rl_reply = rep;
+ xprt->reestablish_timeout = 0;
/* check for expected message types */
/* The order of some of these tests is important. */