Don't bother with check_mnt() in do_add_mount() on shrinkable ones
authorAl Viro <viro@zeniv.linux.org.uk>
Tue, 7 Apr 2009 16:21:18 +0000 (12:21 -0400)
committerAl Viro <viro@zeniv.linux.org.uk>
Fri, 12 Jun 2009 01:35:59 +0000 (21:35 -0400)
These guys are what we add as submounts; checks for "is that attached in
our namespace" are simply irrelevant for those and counterproductive for
use of private vfsmount trees a-la what NFS folks want.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
fs/namespace.c

index 134d494158d9d499baf2d24eae5e465d842933d9..88a904d5aa23c55dcdaecb39b68545e5b10965a4 100644 (file)
@@ -1698,7 +1698,7 @@ int do_add_mount(struct vfsmount *newmnt, struct path *path,
               follow_down(&path->mnt, &path->dentry))
                ;
        err = -EINVAL;
-       if (!check_mnt(path->mnt))
+       if (!(mnt_flags & MNT_SHRINKABLE) && !check_mnt(path->mnt))
                goto unlock;
 
        /* Refuse the same filesystem on the same mount point */