gentoo: use /var/run for new /run compatibility
[util-vserver.git] / src / vserver-stat.c
index 9e1a015..2b55f15 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/memory", 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));
@@ -425,7 +431,7 @@ registerXidCgroups(struct Vector *vec, struct process_info *process)
     }
     snprintf(filename, sizeof(filename), "%s%s%s/memory.stat", cgroup, (per_ss ? "/memory" : ""), name);
 
-    if ((fp = fopen(filename, "r")) == -1)
+    if ((fp = fopen(filename, "r")) == NULL)
       perror("open(memory.stat)");
     else {
       unsigned long long _rss = 0, _mapped_file = 0;