Bind mounts do not honor filesystem mount options. This change will remount 
filesystems that are bind mounted if there are changes to filesystem mount 
options, specifically if the mount is readonly.

Signed-off-by: Abin Shahab <asha...@altiscale.com>
---
 src/lxc/conf.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/src/lxc/conf.c b/src/lxc/conf.c
index 5938c3e..a3779de 100644
--- a/src/lxc/conf.c
+++ b/src/lxc/conf.c
@@ -1921,10 +1921,12 @@ static int mount_entry(const char *fsname, const char 
*target,
        if ((mountflags & MS_REMOUNT) || (mountflags & MS_BIND)) {
                DEBUG("remounting %s on %s to respect bind or remount options",
                      fsname ? fsname : "(none)", target ? target : "(none)");
-
+               unsigned long rqd_flags = 0;
+               if (mountflags & MS_RDONLY)
+                       rqd_flags |= MS_RDONLY;
 #ifdef HAVE_STATVFS
                if (statvfs(fsname, &sb) == 0) {
-                       unsigned long required_flags = 0;
+                       unsigned long required_flags = rqd_flags;
                        if (sb.f_flag & MS_NOSUID)
                                required_flags |= MS_NOSUID;
                        if (sb.f_flag & MS_NODEV)
@@ -1940,7 +1942,7 @@ static int mount_entry(const char *fsname, const char 
*target,
                         * mountflags, then skip the remount
                         */
                        if (!(mountflags & MS_REMOUNT)) {
-                               if (!(required_flags & ~mountflags)) {
+                               if (!(required_flags & ~mountflags) && 
rqd_flags == 0) {
                                        DEBUG("mountflags already was %lu, 
skipping remount",
                                                mountflags);
                                        goto skipremount;
-- 
2.1.0

_______________________________________________
lxc-devel mailing list
lxc-devel@lists.linuxcontainers.org
http://lists.linuxcontainers.org/listinfo/lxc-devel

Reply via email to