vserver-stat: use /sys/fs/cgroup if it is available
authorBenedikt Böhm <bb@xnull.de>
Sat, 18 Feb 2012 16:01:59 +0000 (17:01 +0100)
committerBenedikt Böhm <bb@xnull.de>
Sat, 18 Feb 2012 16:12:26 +0000 (17:12 +0100)
src/vserver-stat.c

index 9e1a015..85ddf89 100644 (file)
@@ -335,8 +335,14 @@ registerXidCgroups(struct Vector *vec, struct process_info *process)
     }
 
     if ((fd = open(DEFAULTCONFDIR "/cgroup/mnt", O_RDONLY)) == -1) {
-      strcpy(cgroup, "/dev/cgroup/");
-      cgroup_len = sizeof("/dev/cgroup");
+      if (utilvserver_isDirectory("/sys/fs/cgroup", false)) {
+        strcpy(cgroup, "/sys/fs/cgroup/");
+        cgroup_len = sizeof("/sys/fs/cgroup");
+        per_ss = 1;
+      } else {
+        strcpy(cgroup, "/dev/cgroup/");
+        cgroup_len = sizeof("/dev/cgroup");
+      }
     }
     else {
       cgroup_len = read(fd, cgroup, sizeof(cgroup));