Merge pull request #209 from imain/publicjoin

Make joinDevices public.
This commit is contained in:
Victor Marmol 2014-10-16 14:51:18 +02:00
commit 0f49d1f254
3 changed files with 23 additions and 0 deletions

View File

@ -73,6 +73,19 @@ func Apply(c *cgroups.Cgroup, pid int) (cgroups.ActiveCgroup, error) {
return d, nil return d, nil
} }
// Symmetrical public function to update device based cgroups. Also available
// in the systemd implementation.
func ApplyDevices(c *cgroups.Cgroup, pid int) error {
d, err := getCgroupData(c, pid)
if err != nil {
return err
}
devices := subsystems["devices"]
return devices.Set(d)
}
func Cleanup(c *cgroups.Cgroup) error { func Cleanup(c *cgroups.Cgroup) error {
d, err := getCgroupData(c, 0) d, err := getCgroupData(c, 0)
if err != nil { if err != nil {

View File

@ -20,6 +20,10 @@ func GetPids(c *cgroups.Cgroup) ([]int, error) {
return nil, fmt.Errorf("Systemd not supported") return nil, fmt.Errorf("Systemd not supported")
} }
func ApplyDevices(c *cgroups.Cgroup, pid int) error {
return fmt.Errorf("Systemd not supported")
}
func Freeze(c *cgroups.Cgroup, state cgroups.FreezerState) error { func Freeze(c *cgroups.Cgroup, state cgroups.FreezerState) error {
return fmt.Errorf("Systemd not supported") return fmt.Errorf("Systemd not supported")
} }

View File

@ -327,6 +327,12 @@ func joinDevices(c *cgroups.Cgroup, pid int) error {
return nil return nil
} }
// Symmetrical public function to update device based cgroups. Also available
// in the fs implementation.
func ApplyDevices(c *cgroups.Cgroup, pid int) error {
return joinDevices(c, pid)
}
func joinMemory(c *cgroups.Cgroup, pid int) error { func joinMemory(c *cgroups.Cgroup, pid int) error {
memorySwap := c.MemorySwap memorySwap := c.MemorySwap