From 5ae72b98f8f525a08753610e05ad0750247d628c Mon Sep 17 00:00:00 2001 From: Li Feng Date: Mon, 24 Jul 2017 16:26:52 +0800 Subject: [PATCH] Using 'add-required_remount_flags' function to add required flags Signed-off-by: Li Feng --- src/lxc/bdev/lxcdir.c | 4 +++- src/lxc/conf.c | 2 +- src/lxc/conf.h | 3 +++ 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/lxc/bdev/lxcdir.c b/src/lxc/bdev/lxcdir.c index 0778df1cc..48287dded 100644 --- a/src/lxc/bdev/lxcdir.c +++ b/src/lxc/bdev/lxcdir.c @@ -136,6 +136,7 @@ int dir_mount(struct bdev *bdev) unsigned long mntflags; char *src, *mntdata; int ret; + unsigned long mflags; if (strcmp(bdev->type, "dir")) return -22; @@ -154,7 +155,8 @@ int dir_mount(struct bdev *bdev) if ((0 == ret) && (mntflags & MS_RDONLY)) { DEBUG("remounting %s on %s with readonly options", src ? src : "(none)", bdev->dest ? bdev->dest : "(none)"); - ret = mount(src, bdev->dest, "bind", MS_BIND | MS_REC | mntflags | MS_REMOUNT, mntdata); + mflags = add_required_remount_flags(src, bdev->dest, MS_BIND | MS_REC | mntflags | MS_REMOUNT); + ret = mount(src, bdev->dest, "bind", mflags, mntdata); } free(mntdata); diff --git a/src/lxc/conf.c b/src/lxc/conf.c index f27c4acea..c8dba5457 100644 --- a/src/lxc/conf.c +++ b/src/lxc/conf.c @@ -628,7 +628,7 @@ int pin_rootfs(const char *rootfs) * If we are asking to remount something, make sure that any * NOEXEC etc are honored. */ -static unsigned long add_required_remount_flags(const char *s, const char *d, +unsigned long add_required_remount_flags(const char *s, const char *d, unsigned long flags) { #ifdef HAVE_STATVFS diff --git a/src/lxc/conf.h b/src/lxc/conf.h index 82da42e33..8150c3744 100644 --- a/src/lxc/conf.h +++ b/src/lxc/conf.h @@ -481,4 +481,7 @@ void remount_all_slave(void); extern void suggest_default_idmap(void); FILE *make_anonymous_mount_file(struct lxc_list *mount); struct lxc_list *sort_cgroup_settings(struct lxc_list* cgroup_settings); +unsigned long add_required_remount_flags(const char *s, const char *d, + unsigned long flags); + #endif -- 2.47.2