]> git.decadent.org.uk Git - nfs-utils.git/commitdiff
mounts.nfs: v2 and v3 background mounts should retry when server is down.
authorSteve Dickson <steved@redhat.com>
Tue, 1 May 2012 19:34:34 +0000 (15:34 -0400)
committerSteve Dickson <steved@redhat.com>
Tue, 1 May 2012 19:34:34 +0000 (15:34 -0400)
The point of background mounts is to have the mount
retried if the mount fails. This patch allows the v2/v3
background mount to proceed in the case when the server
is down by not making EOPNOTSUPP a permanent error.

Signed-off-by: Steve Dickson <steved@redhat.com>
utils/mount/stropts.c

index d52e21a8749c17d770314c7863e96e49f4efbb79..e09aa7c3b470e5322e5b5ebf3115f73eeed947fd 100644 (file)
@@ -911,7 +911,8 @@ static int nfsmount_parent(struct nfsmount_info *mi)
        if (nfs_try_mount(mi))
                return EX_SUCCESS;
 
-       if (nfs_is_permanent_error(errno)) {
+       /* retry background mounts when the server is not up */
+       if (nfs_is_permanent_error(errno) && errno != EOPNOTSUPP) {
                mount_error(mi->spec, mi->node, errno);
                return EX_FAIL;
        }
@@ -946,7 +947,8 @@ static int nfsmount_child(struct nfsmount_info *mi)
                if (nfs_try_mount(mi))
                        return EX_SUCCESS;
 
-               if (nfs_is_permanent_error(errno))
+               /* retry background mounts when the server is not up */
+               if (nfs_is_permanent_error(errno) && errno != EOPNOTSUPP)
                        break;
 
                if (time(NULL) > timeout)