Hello all! This bug stalked me for a while, but only now it bit me quite badly... (Lost about an hour of work...)
So the culprit: inside the fstab file for the `lxc.mount` option I can use options like `ro` together with `bind`. Unfortunately the kernel just laughs in my face and ignores any options I've put in there... :) But not any more: I've updated `./src/lxc/conf.c` (`mount_file_entries` function) so that when it encounters a `bind` option it executes it twice (one without any extra options, and a second time with the remount flag set.) I've marginally (as in my particular case) tested it and it works. Any other ideas on how to solve this? Any comments? Ciprian. P.S.: One question though (both in the patched and unpatched versions): it seems that if I put two lines inside the fstab, once with only `bind` options, and a second one with `remount,ro` option it doesn't work and I receive the error `No such device - failed to mount`. But this is equivalent with what my patched version is doing (which works)... Strange... diff --git a/src/lxc/conf.c b/src/lxc/conf.c index 26ddd03..f7c5816 100644 --- a/src/lxc/conf.c +++ b/src/lxc/conf.c @@ -801,11 +801,20 @@ static int mount_file_entries(FILE *file) } if (mount(mntent->mnt_fsname, mntent->mnt_dir, - mntent->mnt_type, mntflags, mntdata)) { + mntent->mnt_type, mntflags & ~MS_REMOUNT, mntdata)) { SYSERROR("failed to mount '%s' on '%s'", mntent->mnt_fsname, mntent->mnt_dir); goto out; } + if ((mntflags & MS_REMOUNT == MS_REMOUNT) || (mntflags & MS_BIND == MS_BIND)) { + DEBUG ("remounting %s on %s to respect bind or remount options", mntent->mnt_fsname, mntent->mnt_dir); + if (mount(mntent->mnt_fsname, mntent->mnt_dir, + mntent->mnt_type, mntflags | MS_REMOUNT, mntdata)) { + SYSERROR("failed to mount '%s' on '%s'", + mntent->mnt_fsname, mntent->mnt_dir); + goto out; + } + } DEBUG("mounted %s on %s, type %s", mntent->mnt_fsname, mntent->mnt_dir, mntent->mnt_type); ------------------------------------------------------------------------------ Download Intel® Parallel Studio Eval Try the new software tools for yourself. Speed compiling, find bugs proactively, and fine-tune applications for parallel performance. See why Intel Parallel Studio got high marks during beta. http://p.sf.net/sfu/intel-sw-dev _______________________________________________ Lxc-devel mailing list Lxc-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lxc-devel