[systemd-commits] src/cgroup.c

Lennart Poettering lennart at kemper.freedesktop.org
Tue Mar 29 11:29:09 PDT 2011


 src/cgroup.c |   10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

New commits:
commit 12235040ec94279ad92693dcfae0a4d9c35a6076
Author: Lennart Poettering <lennart at poettering.net>
Date:   Tue Mar 29 20:29:02 2011 +0200

    cgroup: explain when we cannot initialize the cgroup stuff

diff --git a/src/cgroup.c b/src/cgroup.c
index b75fe0b..5864858 100644
--- a/src/cgroup.c
+++ b/src/cgroup.c
@@ -226,8 +226,10 @@ int manager_setup_cgroup(Manager *m) {
         assert(m);
 
         /* 1. Determine hierarchy */
-        if ((r = cg_get_by_pid(SYSTEMD_CGROUP_CONTROLLER, 0, &current)) < 0)
+        if ((r = cg_get_by_pid(SYSTEMD_CGROUP_CONTROLLER, 0, &current)) < 0) {
+                log_error("Cannot determine cgroup we are running in: %s", strerror(-r));
                 goto finish;
+        }
 
         if (m->running_as == MANAGER_SYSTEM)
                 strcpy(suffix, "/system");
@@ -246,14 +248,17 @@ int manager_setup_cgroup(Manager *m) {
                 /* We need a new root cgroup */
                 m->cgroup_hierarchy = NULL;
                 if (asprintf(&m->cgroup_hierarchy, "%s%s", streq(current, "/") ? "" : current, suffix) < 0) {
+                        log_error("Out of memory");
                         r = -ENOMEM;
                         goto finish;
                 }
         }
 
         /* 2. Show data */
-        if ((r = cg_get_path(SYSTEMD_CGROUP_CONTROLLER, m->cgroup_hierarchy, NULL, &path)) < 0)
+        if ((r = cg_get_path(SYSTEMD_CGROUP_CONTROLLER, m->cgroup_hierarchy, NULL, &path)) < 0) {
+                log_error("Cannot find cgroup mount point: %s", strerror(-r));
                 goto finish;
+        }
 
         log_debug("Using cgroup controller " SYSTEMD_CGROUP_CONTROLLER ". File system hierarchy is at %s.", path);
 
@@ -276,6 +281,7 @@ int manager_setup_cgroup(Manager *m) {
                 close_nointr_nofail(m->pin_cgroupfs_fd);
 
         if ((m->pin_cgroupfs_fd = open(path, O_RDONLY|O_CLOEXEC|O_DIRECTORY|O_NOCTTY|O_NONBLOCK)) < 0) {
+                log_error("Failed to open pin file: %m");
                 r = -errno;
                 goto finish;
         }



More information about the systemd-commits mailing list