From 68c152ef7a2fe18f71cb73a4800501a7c008bf46 Mon Sep 17 00:00:00 2001 From: Serge Hallyn Date: Mon, 28 Jan 2013 16:57:24 -0600 Subject: [PATCH] setup_mount_entries: ignore mount failure if 'optional' MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit If 'optional' is in the mount options, then avoid failure in mount(). Experiments suggest we could just do this checking data at mount_entry(), but that feels less proper than using hasmntopt() against the mntent. Signed-off-by: Serge Hallyn Acked-by: Stéphane Graber --- src/lxc/conf.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/lxc/conf.c b/src/lxc/conf.c index 65cc2dccb..63f5567af 100644 --- a/src/lxc/conf.c +++ b/src/lxc/conf.c @@ -1502,6 +1502,9 @@ static inline int mount_entry_on_systemfs(struct mntent *mntent) ret = mount_entry(mntent->mnt_fsname, mntent->mnt_dir, mntent->mnt_type, mntflags, mntdata); + if (hasmntopt(mntent, "optional") != NULL) + ret = 0; + free(mntdata); return ret; @@ -1556,6 +1559,9 @@ skipabs: ret = mount_entry(mntent->mnt_fsname, path, mntent->mnt_type, mntflags, mntdata); + if (hasmntopt(mntent, "optional") != NULL) + ret = 0; + out: free(mntdata); return ret; @@ -1584,6 +1590,9 @@ static int mount_entry_on_relative_rootfs(struct mntent *mntent, ret = mount_entry(mntent->mnt_fsname, path, mntent->mnt_type, mntflags, mntdata); + if (hasmntopt(mntent, "optional") != NULL) + ret = 0; + free(mntdata); return ret; -- 2.47.2