diff options
author | Miloslav Trmač <mitr@redhat.com> | 2018-12-03 21:49:08 +0100 |
---|---|---|
committer | Miloslav Trmač <mitr@redhat.com> | 2018-12-06 23:31:54 +0100 |
commit | b70f8b3884e42b17748f8d503c84b855aa1eda8d (patch) | |
tree | 079ad2299b19079f2c48fcfb5707fd5d4347e9d5 /libpod/util_linux.go | |
parent | 6a0afce7c8ddfb9d70467da17b7f820a5aba5c56 (diff) | |
download | podman-b70f8b3884e42b17748f8d503c84b855aa1eda8d.tar.gz podman-b70f8b3884e42b17748f8d503c84b855aa1eda8d.tar.bz2 podman-b70f8b3884e42b17748f8d503c84b855aa1eda8d.zip |
Fix build on non-Linux
Unrelated to the rest of the PR.
Signed-off-by: Miloslav Trmač <mitr@redhat.com>
Diffstat (limited to 'libpod/util_linux.go')
-rw-r--r-- | libpod/util_linux.go | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/libpod/util_linux.go b/libpod/util_linux.go index 0cd486379..30e2538c3 100644 --- a/libpod/util_linux.go +++ b/libpod/util_linux.go @@ -7,6 +7,7 @@ import ( "strings" "github.com/containerd/cgroups" + "github.com/containers/libpod/pkg/util" spec "github.com/opencontainers/runtime-spec/specs-go" "github.com/pkg/errors" "github.com/sirupsen/logrus" @@ -67,3 +68,26 @@ func assembleSystemdCgroupName(baseSlice, newSlice string) (string, error) { return final, nil } + +// GetV1CGroups gets the V1 cgroup subsystems and then "filters" +// out any subsystems that are provided by the caller. Passing nil +// for excludes will return the subsystems unfiltered. +//func GetV1CGroups(excludes []string) ([]cgroups.Subsystem, error) { +func GetV1CGroups(excludes []string) cgroups.Hierarchy { + return func() ([]cgroups.Subsystem, error) { + var filtered []cgroups.Subsystem + + subSystem, err := cgroups.V1() + if err != nil { + return nil, err + } + for _, s := range subSystem { + // If the name of the subsystem is not in the list of excludes, then + // add it as a keeper. + if !util.StringInSlice(string(s.Name()), excludes) { + filtered = append(filtered, s) + } + } + return filtered, nil + } +} |