diff options
Diffstat (limited to 'fs/nfs/client.c')
| -rw-r--r-- | fs/nfs/client.c | 10 | 
1 files changed, 5 insertions, 5 deletions
diff --git a/fs/nfs/client.c b/fs/nfs/client.c index 003ebce4bbc4..1e106780a237 100644 --- a/fs/nfs/client.c +++ b/fs/nfs/client.c @@ -426,7 +426,7 @@ EXPORT_SYMBOL_GPL(nfs_mark_client_ready);   * Initialise the timeout values for a connection   */  void nfs_init_timeout_values(struct rpc_timeout *to, int proto, -				    unsigned int timeo, unsigned int retrans) +				    int timeo, int retrans)  {  	to->to_initval = timeo * HZ / 10;  	to->to_retries = retrans; @@ -434,9 +434,9 @@ void nfs_init_timeout_values(struct rpc_timeout *to, int proto,  	switch (proto) {  	case XPRT_TRANSPORT_TCP:  	case XPRT_TRANSPORT_RDMA: -		if (to->to_retries == 0) +		if (retrans == NFS_UNSPEC_RETRANS)  			to->to_retries = NFS_DEF_TCP_RETRANS; -		if (to->to_initval == 0) +		if (timeo == NFS_UNSPEC_TIMEO || to->to_retries == 0)  			to->to_initval = NFS_DEF_TCP_TIMEO * HZ / 10;  		if (to->to_initval > NFS_MAX_TCP_TIMEOUT)  			to->to_initval = NFS_MAX_TCP_TIMEOUT; @@ -449,9 +449,9 @@ void nfs_init_timeout_values(struct rpc_timeout *to, int proto,  		to->to_exponential = 0;  		break;  	case XPRT_TRANSPORT_UDP: -		if (to->to_retries == 0) +		if (retrans == NFS_UNSPEC_RETRANS)  			to->to_retries = NFS_DEF_UDP_RETRANS; -		if (!to->to_initval) +		if (timeo == NFS_UNSPEC_TIMEO || to->to_initval == 0)  			to->to_initval = NFS_DEF_UDP_TIMEO * HZ / 10;  		if (to->to_initval > NFS_MAX_UDP_TIMEOUT)  			to->to_initval = NFS_MAX_UDP_TIMEOUT;  | 
