Re: [PATCH 1/2] mount: ECONNREFUSED is a permanent error

Steve Dickson
2009-11-16T18:13:55Z

On 10/08/2009 01:37 PM, Chuck Lever wrote:
> I had assumed early on that mount.nfs should retry a refused connection.
>
> Apparently this is not the case. Legacy mount.nfs4 fails immediately
> if the NFS server refuses the connection. Legacy mount.nfs and
> text-based mount.nfs both fail immediately if the rpcbind service is
> refusing connections.
>
> So, banish ECONNREFUSED returns from mount(2) to the domain of
> permanent errors.
>
> Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
> ---
>
> utils/mount/stropts.c | 1 -
> 1 files changed, 0 insertions(+), 1 deletions(-)
>
> diff --git a/utils/mount/stropts.c b/utils/mount/stropts.c
> index 069bdc1..0685caa 100644
> --- a/utils/mount/stropts.c
> +++ b/utils/mount/stropts.c
> @@ -639,7 +639,6 @@ static int nfs_is_permanent_error(int error)
> switch (error) {
> case ESTALE:
> case ETIMEDOUT:
> - case ECONNREFUSED:
> return 0; /* temporary */
> default:
> return 1; /* permanent */
>
I'm going to hold of on this one... I just think we should
continue to try on ECONNREFUSED errors until the retry timer pops...

steved.