diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2010-02-05 09:30:46 -0500 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2010-03-03 14:08:00 -0500 |
commit | 8089352a13b785d4e0df63d87bd2b71c76bb9aee (patch) | |
tree | e84db2c2a5c2095091d2012c00078023b90a3490 /fs | |
parent | d498b25a4f877be535246c4e5b6ee5890781a477 (diff) |
Mirror MS_KERNMOUNT in ->mnt_flags
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/namespace.c | 2 | ||||
-rw-r--r-- | fs/super.c | 3 |
2 files changed, 4 insertions, 1 deletions
diff --git a/fs/namespace.c b/fs/namespace.c index b0b15cc2117c..ffa3843404e0 100644 --- a/fs/namespace.c +++ b/fs/namespace.c | |||
@@ -1701,7 +1701,7 @@ int do_add_mount(struct vfsmount *newmnt, struct path *path, | |||
1701 | { | 1701 | { |
1702 | int err; | 1702 | int err; |
1703 | 1703 | ||
1704 | mnt_flags &= ~(MNT_SHARED | MNT_WRITE_HOLD); | 1704 | mnt_flags &= ~(MNT_SHARED | MNT_WRITE_HOLD | MNT_INTERNAL); |
1705 | 1705 | ||
1706 | down_write(&namespace_sem); | 1706 | down_write(&namespace_sem); |
1707 | /* Something was mounted here while we slept */ | 1707 | /* Something was mounted here while we slept */ |
diff --git a/fs/super.c b/fs/super.c index 903896ec7c73..f35ac6022109 100644 --- a/fs/super.c +++ b/fs/super.c | |||
@@ -937,6 +937,9 @@ vfs_kern_mount(struct file_system_type *type, int flags, const char *name, void | |||
937 | if (!mnt) | 937 | if (!mnt) |
938 | goto out; | 938 | goto out; |
939 | 939 | ||
940 | if (flags & MS_KERNMOUNT) | ||
941 | mnt->mnt_flags = MNT_INTERNAL; | ||
942 | |||
940 | if (data && !(type->fs_flags & FS_BINARY_MOUNTDATA)) { | 943 | if (data && !(type->fs_flags & FS_BINARY_MOUNTDATA)) { |
941 | secdata = alloc_secdata(); | 944 | secdata = alloc_secdata(); |
942 | if (!secdata) | 945 | if (!secdata) |