Open akorn opened 5 years ago
The same problem affects the other cgroups too. E.g.
open("/etc/vservers/.defaults/cgroup/mnt", O_RDONLY) = 4
read(4, "/sys/fs/cgroup\n", 129) = 15
close(4) = 0
open("/etc/vservers/.defaults/cgroup/base", O_RDONLY) = 4
read(4, "vserver/\n", 129) = 9
close(4) = 0
access("/etc/vservers/.defaults/cgroup/per-ss", F_OK) = 0
open("/etc/vservers/mail/cgroup/name", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/sys/fs/cgroup///memory/vserver///mail/memory.stat", O_RDONLY) = 4
[...]
open("/sys/fs/cgroup//cpuacct/mail/cpuacct.stat", O_RDONLY) = -1 ENOENT (No such file or directory)
(It should be accessing /sys/fs/cgroup/cpuacct/vserver/mail/cpuacct.stat
.)
Replacing the 2nd snprintf()
line in vserver-stat.c
with
snprintf(filename, sizeof(filename), "%s/%s/%s/%s/cpuacct.stat", cgroup, (per_ss ? "/cpuacct" : ""), base, name);
Fixes it for me.
Symptom:
It should be accessing
/sys/fs/cgroup/memory/vserver/mail/memory.stat
instead.I have a quick and dirty fix:
It's cosmetically imperfect because it uses too many
/
characters in the path tomemory.stat
, but it works.