From: Jeffrey Altman Date: Mon, 18 Aug 2014 19:28:14 +0000 (-0400) Subject: Windows: set hard dead timeout not conn timeout for probes X-Git-Tag: upstream/1.8.0_pre1^2~601 X-Git-Url: https://git.michaelhowe.org/gitweb/?a=commitdiff_plain;h=bf687348e0269deb0d76475ba9b7219a6e1b40e8;p=packages%2Fo%2Fopenafs.git Windows: set hard dead timeout not conn timeout for probes For the Rx connections used for probing VL and FILE servers set a hard dead timeout and not a connection timeout. A connection timeout will not terminate the call as long as the lastReceiveTime continues to be updated by ping packets. The hard dead timeout will cause the connection to fail when the 10 second limit expires. Change-Id: I371dcd95fc0ff822a205cf903fa6218e80a2b042 Reviewed-on: http://gerrit.openafs.org/11401 Tested-by: BuildBot Reviewed-by: Jeffrey Altman --- diff --git a/src/WINNT/afsd/cm_server.c b/src/WINNT/afsd/cm_server.c index 52e1672f1..cf0bba898 100644 --- a/src/WINNT/afsd/cm_server.c +++ b/src/WINNT/afsd/cm_server.c @@ -250,7 +250,7 @@ cm_PingServer(cm_server_t *tsp) rxconnp = cm_GetRxConn(connp); if (wasDown) - rx_SetConnDeadTime(rxconnp, 10); + rx_SetConnHardDeadTime(rxconnp, 10); if (tsp->type == CM_SERVER_VLDB) { code = VL_ProbeServer(rxconnp); } @@ -259,7 +259,7 @@ cm_PingServer(cm_server_t *tsp) code = RXAFS_GetCapabilities(rxconnp, &caps); } if (wasDown) - rx_SetConnDeadTime(rxconnp, ConnDeadtimeout); + rx_SetConnHardDeadTime(rxconnp, HardDeadtimeout); rx_PutConnection(rxconnp); cm_PutConn(connp); } /* got an unauthenticated connection to this server */ @@ -527,7 +527,7 @@ static void cm_CheckServersMulti(afs_uint32 flags, cm_cell_t *cellp) lock_ObtainRead(&cm_serverLock); rxconns[nconns] = cm_GetRxConn(conns[nconns]); if (conntimer[nconns] = (isDown ? 1 : 0)) - rx_SetConnDeadTime(rxconns[nconns], 10); + rx_SetConnHardDeadTime(rxconns[nconns], 10); nconns++; } @@ -546,7 +546,7 @@ static void cm_CheckServersMulti(afs_uint32 flags, cm_cell_t *cellp) /* Process results of servers that support RXAFS_GetCapabilities */ for (i=0; i