2016-06-22 04:27:39

by NeilBrown

[permalink] [raw]
Subject: [PATCH] nfs.man: clarify effect of 'retry' option.



The total timeout for a "mount" attempt to an non-responsive server
will always be a multiple of time a single mount attempt in the kernel takes,
which for TCP defaults to about 4 minutes.
The documentation for the "retry" option seems to suggest that this can be used
to set a maximum but it really sets a time after which to stop retrying.
The total can be as much as "retry" plus the time for a single attempt.

So clarify the documentation a bit, and also note that retrans
defaults are different for UDP and TCP:
#define NFS_DEF_UDP_RETRANS (3)
#define NFS_DEF_TCP_RETRANS (2)

Reported-by: Howard Guo<[email protected]>
Signed-off-by: NeilBrown <[email protected]>

diff --git a/utils/mount/nfs.man b/utils/mount/nfs.man
index e541cdc95cb1..fab24f898f64 100644
--- a/utils/mount/nfs.man
+++ b/utils/mount/nfs.man
@@ -391,6 +391,13 @@ is 2 minutes, and the default value for background mounts is 10000 minutes
If a value of zero is specified, the
.BR mount (8)
command exits immediately after the first failure.
+.IP
+Note that the total timeout will always be a multiple of the time
+determined by the
+.BR timeo
+and
+.BR retrans
+options, which by default will be 30 minutes.
.TP 1.5i
.BI sec= flavors
A colon-separated list of one or more security flavors to use for accessing


Attachments:
signature.asc (818.00 B)

2016-06-22 05:09:01

by Trond Myklebust

[permalink] [raw]
Subject: Re: [PATCH] nfs.man: clarify effect of 'retry' option.


> On Jun 22, 2016, at 00:27, NeilBrown <[email protected]> wrote:
>
>
>
> The total timeout for a "mount" attempt to an non-responsive server
> will always be a multiple of time a single mount attempt in the kernel takes,
> which for TCP defaults to about 4 minutes.
> The documentation for the "retry" option seems to suggest that this can be used
> to set a maximum but it really sets a time after which to stop retrying.
> The total can be as much as "retry" plus the time for a single attempt.
>
> So clarify the documentation a bit, and also note that retrans
> defaults are different for UDP and TCP:
> #define NFS_DEF_UDP_RETRANS (3)
> #define NFS_DEF_TCP_RETRANS (2)
>
> Reported-by: Howard Guo<[email protected]>
> Signed-off-by: NeilBrown <[email protected]>
>
> diff --git a/utils/mount/nfs.man b/utils/mount/nfs.man
> index e541cdc95cb1..fab24f898f64 100644
> --- a/utils/mount/nfs.man
> +++ b/utils/mount/nfs.man
> @@ -391,6 +391,13 @@ is 2 minutes, and the default value for background mounts is 10000 minutes
> If a value of zero is specified, the
> .BR mount (8)
> command exits immediately after the first failure.
> +.IP
> +Note that the total timeout will always be a multiple of the time
> +determined by the
> +.BR timeo
> +and
> +.BR retrans
> +options, which by default will be 30 minutes.

How do we get to 30 minutes?