]> git.ipfire.org Git - thirdparty/lxc.git/commitdiff
cgfsng: do MS_REMOUNT
authorLiFeng <lifeng68@huawei.com>
Wed, 7 Feb 2018 16:39:59 +0000 (11:39 -0500)
committerChristian Brauner <christian.brauner@ubuntu.com>
Wed, 7 Feb 2018 10:21:57 +0000 (11:21 +0100)
Perform MS_REMOUNT on mounts with MS_RDONLY.

Signed-off-by: LiFeng <lifeng68@huawei.com>
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
src/lxc/cgroups/cgfsng.c

index f4bec7f520a3938319839d9fd0065285b7e42c50..cf165a27b0ba7bec16d31336895e128ee3f64da8 100644 (file)
@@ -1947,6 +1947,15 @@ static int do_secondstage_mounts_if_needed(int type, struct hierarchy *h,
                                cgpath);
                return -1;
        }
+
+       if (flags & MS_RDONLY) {
+               if (mount(sourcepath, cgpath, "cgroup", MS_REMOUNT | flags | MS_RDONLY, NULL) < 0) {
+                       free(sourcepath);
+                       SYSERROR("Error remounting %s read-only", cgpath);
+                       return -1;
+               }
+       }
+
        free(sourcepath);
        INFO("Completed second stage cgroup automounts for %s", cgpath);
        return 0;