Cgroup change results in "No space left on device" or "Error Code: 5001"
Issue
-
Reclassifying a task produces the following output
r6 # echo 2035 > /cgroup/cpuset/test/tasks -bash: echo: write error: No space left on device
-
Many errors are seen when starting cgroups:
Oct 12 11:28:18 hostname CGRE[4809]: Started the CGroup Rules Engine Daemon. Oct 12 11:28:18 hostname CGRE[4809]: Cgroup change for PID: 4810, UID: 0, GID: 0, PROCNAME: /bin/touch FAILED! (Error Code: 50016) Oct 12 11:28:21 hostname CGRE[4809]: Cgroup change for PID: 4812, UID: 0, GID: 0, PROCNAME: /usr/bin/strace FAILED! (Error Code: 50016) Oct 12 11:28:21 hostname CGRE[4809]: Cgroup change for PID: 4813, UID: 0, GID: 498, PROCNAME: /bin/cgexec FAILED! (Error Code: 50016) Oct 12 11:28:21 hostname CGRE[4809]: Cgroup change for PID: 4813, UID: 0, GID: 498, PROCNAME: /bin/cgexec FAILED! (Error Code: 50016) Oct 12 11:28:21 hostname CGRE[4809]: Cgroup change for PID: 4813, UID: 0, GID: 0, PROCNAME: /bin/cgexec FAILED! (Error Code: 50016) Oct 12 11:29:08 hostname CGRE[4809]: Cgroup change for PID: 4814, UID: 0, GID: 0, PROCNAME: /bin/ls FAILED! (Error Code: 50016)
-
Running strace against cgexec shows:
# strace -f cgexec -g cpuset:app /bin/bash execve("/bin/cgexec", ["cgexec", "-g", "cpuset:app", "/bin/bash"], [/* 47 vars */]) = 0 . . . <snip> . .open("/cgroup/cpuset/app//tasks", O_WRONLY|O_CREAT|O_TRUNC|O_CLOEXEC, 0666) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f0e169fc000 write(3, "4813", 4) = -1 ENOSPC (No space left on device) close(3) = 0 munmap(0x7f0e169fc000, 4096) = 0 write(2, "cgroup change of group failed\n", 30cgroup change of group failed ) = 30 exit_group(50016)
Environment
- Red Hat Enterprise Linux
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.