diff options
author | OpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com> | 2021-01-28 16:37:19 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-01-28 16:37:19 -0500 |
commit | 0c6a889a7ec93964a12a10870920727e13e438c3 (patch) | |
tree | 200f719cbda73f16209ab400442a33b2d4a1b634 /pkg/cgroups/cgroups.go | |
parent | 2ee034c1e6ddd9918b97ddea2fd3e6388ec8f60b (diff) | |
parent | 89bb8a9b368b1f42fb5ff8ca612aa3d4981cff3a (diff) | |
download | podman-0c6a889a7ec93964a12a10870920727e13e438c3.tar.gz podman-0c6a889a7ec93964a12a10870920727e13e438c3.tar.bz2 podman-0c6a889a7ec93964a12a10870920727e13e438c3.zip |
Merge pull request #9110 from rhatdan/cgroups
Don't fail if one of the cgroups is not setup
Diffstat (limited to 'pkg/cgroups/cgroups.go')
-rw-r--r-- | pkg/cgroups/cgroups.go | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/pkg/cgroups/cgroups.go b/pkg/cgroups/cgroups.go index c200dd01a..285fd093a 100644 --- a/pkg/cgroups/cgroups.go +++ b/pkg/cgroups/cgroups.go @@ -24,6 +24,7 @@ var ( ErrCgroupDeleted = errors.New("cgroup deleted") // ErrCgroupV1Rootless means the cgroup v1 were attempted to be used in rootless environment ErrCgroupV1Rootless = errors.New("no support for CGroups V1 in rootless environments") + ErrStatCgroup = errors.New("no cgroup available for gathering user statistics") ) // CgroupControl controls a cgroup hierarchy @@ -525,10 +526,19 @@ func (c *CgroupControl) AddPid(pid int) error { // Stat returns usage statistics for the cgroup func (c *CgroupControl) Stat() (*Metrics, error) { m := Metrics{} + found := false for _, h := range handlers { if err := h.Stat(c, &m); err != nil { - return nil, err + if !os.IsNotExist(errors.Cause(err)) { + return nil, err + } + logrus.Warningf("Failed to retrieve cgroup stats: %v", err) + continue } + found = true + } + if !found { + return nil, ErrStatCgroup } return &m, nil } |