mirror of
https://github.com/opencontainers/runc.git
synced 2026-07-11 06:03:57 +08:00
libct: use manager.AddPid to add exec to cgroup
The main benefit here is when we are using a systemd cgroup driver, we actually ask systemd to add a PID, rather than doing it ourselves. This way, we can add rootless exec PID to a cgroup. This requires newer opencontainers/cgroups and coreos/go-systemd. Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
This commit is contained in:
@@ -226,17 +226,17 @@ function check_exec_debug() {
|
||||
# Check we can't join parent cgroup.
|
||||
runc exec --cgroup ".." test_busybox cat /proc/self/cgroup
|
||||
[ "$status" -ne 0 ]
|
||||
[[ "$output" == *" .. is not a sub cgroup path"* ]]
|
||||
[[ "$output" == *"bad sub cgroup path"* ]]
|
||||
|
||||
# Check we can't join non-existing subcgroup.
|
||||
runc exec --cgroup nonexistent test_busybox cat /proc/self/cgroup
|
||||
[ "$status" -ne 0 ]
|
||||
[[ "$output" == *" adding pid "*"/nonexistent/cgroup.procs: no such file "* ]]
|
||||
[[ "$output" == *" adding pid "*"o such file or directory"* ]]
|
||||
|
||||
# Check we can't join non-existing subcgroup (for a particular controller).
|
||||
runc exec --cgroup cpu:nonexistent test_busybox cat /proc/self/cgroup
|
||||
[ "$status" -ne 0 ]
|
||||
[[ "$output" == *" adding pid "*"/nonexistent/cgroup.procs: no such file "* ]]
|
||||
[[ "$output" == *" adding pid "*"o such file or directory"* ]]
|
||||
|
||||
# Check we can't specify non-existent controller.
|
||||
runc exec --cgroup whaaat:/ test_busybox true
|
||||
@@ -277,12 +277,12 @@ function check_exec_debug() {
|
||||
# Check we can't join parent cgroup.
|
||||
runc exec --cgroup ".." test_busybox cat /proc/self/cgroup
|
||||
[ "$status" -ne 0 ]
|
||||
[[ "$output" == *" .. is not a sub cgroup path"* ]]
|
||||
[[ "$output" == *"bad sub cgroup path"* ]]
|
||||
|
||||
# Check we can't join non-existing subcgroup.
|
||||
runc exec --cgroup nonexistent test_busybox cat /proc/self/cgroup
|
||||
[ "$status" -ne 0 ]
|
||||
[[ "$output" == *" adding pid "*"/nonexistent/cgroup.procs: no such file "* ]]
|
||||
[[ "$output" == *" adding pid "*"o such file or directory"* ]]
|
||||
|
||||
# Check we can join top-level cgroup (implicit).
|
||||
runc exec test_busybox grep '^0::/$' /proc/self/cgroup
|
||||
@@ -318,7 +318,7 @@ function check_exec_debug() {
|
||||
# Check that --cgroup / disables the init cgroup fallback.
|
||||
runc exec --cgroup / test_busybox true
|
||||
[ "$status" -ne 0 ]
|
||||
[[ "$output" == *" adding pid "*" to cgroups"*"/cgroup.procs: device or resource busy"* ]]
|
||||
[[ "$output" == *" adding pid "*" to cgroups"*"evice or resource busy"* ]]
|
||||
|
||||
# Check that explicit --cgroup foobar works.
|
||||
runc exec --cgroup foobar test_busybox grep '^0::/foobar$' /proc/self/cgroup
|
||||
|
||||
Reference in New Issue
Block a user