]> git.ipfire.org Git - thirdparty/lxc.git/commitdiff
cgroups/cgfsng: rework cgfsng_{monitor,payload}_delegate_controllers()
authorChristian Brauner <christian.brauner@ubuntu.com>
Sat, 7 Dec 2019 17:17:48 +0000 (18:17 +0100)
committerChristian Brauner <christian.brauner@ubuntu.com>
Sat, 7 Dec 2019 23:13:37 +0000 (00:13 +0100)
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
src/lxc/cgroups/cgfsng.c

index abd085a6d374cdb706cc4d6b0a4d08e65b5635f7..2011eb8a28acbe6669e9e79f3a9dab67e765630d 100644 (file)
@@ -2838,10 +2838,10 @@ bool __cgfsng_delegate_controllers(struct cgroup_ops *ops, const char *cgroup)
                        base_path = must_append_path(base_path, parts[i], NULL);
                target = must_make_path(base_path, "cgroup.subtree_control", NULL);
                ret = lxc_writeat(-1, target, add_controllers, full_len);
-               if (ret < 0) {
-                       SYSERROR("Could not enable \"%s\" controllers in the unified cgroup \"%s\"", add_controllers, target);
-                       goto on_error;
-               }
+               if (ret < 0)
+                       log_error_errno(goto on_error,
+                                       errno, "Could not enable \"%s\" controllers in the unified cgroup \"%s\"",
+                                       add_controllers, target);
                TRACE("Enable \"%s\" controllers in the unified cgroup \"%s\"", add_controllers, target);
        }
 
@@ -2854,11 +2854,17 @@ on_error:
 
 __cgfsng_ops bool cgfsng_monitor_delegate_controllers(struct cgroup_ops *ops)
 {
+       if (!ops)
+               return ret_set_errno(false, ENOENT);
+
        return __cgfsng_delegate_controllers(ops, ops->monitor_cgroup);
 }
 
 __cgfsng_ops bool cgfsng_payload_delegate_controllers(struct cgroup_ops *ops)
 {
+       if (!ops)
+               return ret_set_errno(false, ENOENT);
+
        return __cgfsng_delegate_controllers(ops, ops->container_cgroup);
 }