summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com>2021-04-12 12:15:47 -0700
committerGitHub <noreply@github.com>2021-04-12 12:15:47 -0700
commitddffc7fa803fa22033459fd5666679179c3581bc (patch)
tree15292a227a62c4e5b01ff4890b026376764b0bfd
parenta6fb11e34ccc13e9cfd6ec37030c0634d1bee830 (diff)
parent2fad29ccb2a048eb69f52014ae17db2a11a76256 (diff)
downloadpodman-ddffc7fa803fa22033459fd5666679179c3581bc.tar.gz
podman-ddffc7fa803fa22033459fd5666679179c3581bc.tar.bz2
podman-ddffc7fa803fa22033459fd5666679179c3581bc.zip
Merge pull request #9996 from giuseppe/disable-cgroupfs-rootless-on-cgroup-v2
cgroup: do not set cgroup parent when rootless and cgroupfs
-rw-r--r--libpod/container_internal_linux.go2
-rw-r--r--test/system/420-cgroups.bats5
2 files changed, 6 insertions, 1 deletions
diff --git a/libpod/container_internal_linux.go b/libpod/container_internal_linux.go
index 4fc45e4f0..1986f7438 100644
--- a/libpod/container_internal_linux.go
+++ b/libpod/container_internal_linux.go
@@ -2216,7 +2216,7 @@ func (c *Container) getOCICgroupPath() (string, error) {
}
cgroupManager := c.CgroupManager()
switch {
- case (rootless.IsRootless() && !unified) || c.config.NoCgroups:
+ case (rootless.IsRootless() && (cgroupManager == config.CgroupfsCgroupsManager || !unified)) || c.config.NoCgroups:
return "", nil
case c.config.CgroupsMode == cgroupSplit:
if c.config.CgroupParent != "" {
diff --git a/test/system/420-cgroups.bats b/test/system/420-cgroups.bats
index 615e43e6c..89c81a742 100644
--- a/test/system/420-cgroups.bats
+++ b/test/system/420-cgroups.bats
@@ -24,6 +24,11 @@ load helpers
run_podman container inspect --format '{{.HostConfig.CgroupManager}}' myc
is "$output" "$other" "podman preserved .HostConfig.CgroupManager"
+ if is_rootless && test $other = cgroupfs ; then
+ run_podman container inspect --format '{{.HostConfig.CgroupParent}}' myc
+ is "$output" "" "podman didn't set .HostConfig.CgroupParent for cgroupfs and rootless"
+ fi
+
# Restart the container, without --cgroup-manager option (ie use default)
# Prior to #7970, this would fail with an OCI runtime error
run_podman start myc