// FindCgroupMountpointDir is used to find the cgroup mount point on a Linux // system. func FindCgroupMountpointDir() (string, error) { mount, err := cgroups.FindCgroupMountpointDir() if err != nil { switch e := err.(type) { case *cgroups.NotFoundError: // It's okay if the mount point is not discovered return "", nil default: // All other errors are passed back as is return "", e } } return mount, nil }
// Gets the cgroupRoot. func getCgroupRoot() (string, error) { cgroupRootLock.Lock() defer cgroupRootLock.Unlock() if cgroupRoot != "" { return cgroupRoot, nil } root, err := cgroups.FindCgroupMountpointDir() if err != nil { return "", err } if _, err := os.Stat(root); err != nil { return "", err } cgroupRoot = root return cgroupRoot, nil }