]> err.no Git - util-linux/commit
mount: sanity check mount flags for MS_PROPAGATION
authorKarel Zak <kzak@redhat.com>
Fri, 27 Aug 2010 10:22:27 +0000 (12:22 +0200)
committerKarel Zak <kzak@redhat.com>
Fri, 27 Aug 2010 10:22:27 +0000 (12:22 +0200)
commit0828125895f7323e39b87673dbdbef4c70da5fdb
tree77569e6303f1cf72ca2ad123dbd61d3fe56ecf66
parent5adaf9f120131f030ce15c5a312746059608e762
mount: sanity check mount flags for MS_PROPAGATION

 mount(8) reuses mount flags from fstab/mtab, the problem is that for
 MS_PROPAGATION operations kernel incorrectly evaluates mount flags if
 the flags contains any non-propagation stuff (e.g. MS_RDONLY). For
 example --make-shared on read-only FS:

   # strace -e mount mount --make-shared /mnt/test
   mount("/dev/sda1", "/mnt/test", "none", MS_RDONLY|MS_SHARED, NULL) = 0

 must be:

   # strace -e mount mount --make-shared /mnt/test
   mount("/dev/sda1", "/mnt/test", "none", MS_SHARED, NULL) = 0

Reported-by: Valerie Aurora <vaurora@redhat.com>
Signed-off-by: Karel Zak <kzak@redhat.com>
mount/mount.c