summaryrefslogtreecommitdiff
path: root/fs/namespace.c
diff options
context:
space:
mode:
authorDan Williams <dan.j.williams@intel.com>2008-09-26 19:01:20 -0700
committerAl Viro <viro@zeniv.linux.org.uk>2008-10-23 05:13:23 -0400
commit0e55a7cca4b66f625d67b292f80b6a976e77c51b (patch)
tree5106fdf23fe0a6030ab00645bf37f19f07aadd45 /fs/namespace.c
parent91efc167d02509ea78abeff6d668065964c67c0b (diff)
downloadlinux-stable-0e55a7cca4b66f625d67b292f80b6a976e77c51b.tar.gz
linux-stable-0e55a7cca4b66f625d67b292f80b6a976e77c51b.tar.bz2
linux-stable-0e55a7cca4b66f625d67b292f80b6a976e77c51b.zip
[RFC PATCH] touch_mnt_namespace when the mount flags change
Daemons that need to be launched while the rootfs is read-only can now poll /proc/mounts to be notified when their O_RDWR requests may no longer end in EROFS. Cc: Kay Sievers <kay.sievers@vrfy.org> Cc: Neil Brown <neilb@suse.de> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Diffstat (limited to 'fs/namespace.c')
-rw-r--r--fs/namespace.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/fs/namespace.c b/fs/namespace.c
index f527a0d6c64d..cce46702d33c 100644
--- a/fs/namespace.c
+++ b/fs/namespace.c
@@ -1550,8 +1550,13 @@ static int do_remount(struct path *path, int flags, int mnt_flags,
if (!err)
path->mnt->mnt_flags = mnt_flags;
up_write(&sb->s_umount);
- if (!err)
+ if (!err) {
security_sb_post_remount(path->mnt, flags, data);
+
+ spin_lock(&vfsmount_lock);
+ touch_mnt_namespace(path->mnt->mnt_ns);
+ spin_unlock(&vfsmount_lock);
+ }
return err;
}