summaryrefslogtreecommitdiff
path: root/pkg/cgroups/pids.go
diff options
context:
space:
mode:
authorDaniel J Walsh <dwalsh@redhat.com>2021-12-06 06:46:27 -0500
committerDaniel J Walsh <dwalsh@redhat.com>2021-12-07 06:17:11 -0500
commit2130d185395b897798dcb1c17bbaf147dfb4da3c (patch)
tree55458df21157cdfd632bc2ad7de4cb38dd969e01 /pkg/cgroups/pids.go
parent2f11e2ac53269d2aafd0325e17e7c9bfda119dea (diff)
downloadpodman-2130d185395b897798dcb1c17bbaf147dfb4da3c.tar.gz
podman-2130d185395b897798dcb1c17bbaf147dfb4da3c.tar.bz2
podman-2130d185395b897798dcb1c17bbaf147dfb4da3c.zip
Update vendor or containers/common moving pkg/cgroups there
[NO NEW TESTS NEEDED] This is just moving pkg/cgroups out so existing tests should be fine. Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
Diffstat (limited to 'pkg/cgroups/pids.go')
-rw-r--r--pkg/cgroups/pids.go66
1 files changed, 0 insertions, 66 deletions
diff --git a/pkg/cgroups/pids.go b/pkg/cgroups/pids.go
deleted file mode 100644
index b2bfebe4d..000000000
--- a/pkg/cgroups/pids.go
+++ /dev/null
@@ -1,66 +0,0 @@
-package cgroups
-
-import (
- "fmt"
- "io/ioutil"
- "path/filepath"
-
- spec "github.com/opencontainers/runtime-spec/specs-go"
-)
-
-type pidHandler struct {
-}
-
-func getPidsHandler() *pidHandler {
- return &pidHandler{}
-}
-
-// Apply set the specified constraints
-func (c *pidHandler) Apply(ctr *CgroupControl, res *spec.LinuxResources) error {
- if res.Pids == nil {
- return nil
- }
- var PIDRoot string
-
- if ctr.cgroup2 {
- PIDRoot = filepath.Join(cgroupRoot, ctr.path)
- } else {
- PIDRoot = ctr.getCgroupv1Path(Pids)
- }
-
- p := filepath.Join(PIDRoot, "pids.max")
- return ioutil.WriteFile(p, []byte(fmt.Sprintf("%d\n", res.Pids.Limit)), 0644)
-}
-
-// Create the cgroup
-func (c *pidHandler) Create(ctr *CgroupControl) (bool, error) {
- return ctr.createCgroupDirectory(Pids)
-}
-
-// Destroy the cgroup
-func (c *pidHandler) Destroy(ctr *CgroupControl) error {
- return rmDirRecursively(ctr.getCgroupv1Path(Pids))
-}
-
-// Stat fills a metrics structure with usage stats for the controller
-func (c *pidHandler) Stat(ctr *CgroupControl, m *Metrics) error {
- if ctr.path == "" {
- // nothing we can do to retrieve the pids.current path
- return nil
- }
-
- var PIDRoot string
- if ctr.cgroup2 {
- PIDRoot = filepath.Join(cgroupRoot, ctr.path)
- } else {
- PIDRoot = ctr.getCgroupv1Path(Pids)
- }
-
- current, err := readFileAsUint64(filepath.Join(PIDRoot, "pids.current"))
- if err != nil {
- return err
- }
-
- m.Pids = PidsMetrics{Current: current}
- return nil
-}