Fix runc pause and runc update

Fixes: #1034
Fixes: #1031

Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
This commit is contained in:
Qiang Huang 2016-09-12 16:02:56 +08:00
parent da7bac1c90
commit b5b6989e9a
1 changed files with 4 additions and 19 deletions

View File

@ -196,17 +196,8 @@ func (m *Manager) Set(container *configs.Config) error {
return nil return nil
} }
for _, sys := range subsystems { for _, sys := range subsystems {
// Generate fake cgroup data. paths := m.GetPaths()
d, err := getCgroupData(container.Cgroups, -1) path := paths[sys.Name()]
if err != nil {
return err
}
// Get the path, but don't error out if the cgroup wasn't found.
path, err := d.path(sys.Name())
if err != nil && !cgroups.IsNotFound(err) {
return err
}
if err := sys.Set(path, container.Cgroups); err != nil { if err := sys.Set(path, container.Cgroups); err != nil {
return err return err
} }
@ -223,14 +214,8 @@ func (m *Manager) Set(container *configs.Config) error {
// Freeze toggles the container's freezer cgroup depending on the state // Freeze toggles the container's freezer cgroup depending on the state
// provided // provided
func (m *Manager) Freeze(state configs.FreezerState) error { func (m *Manager) Freeze(state configs.FreezerState) error {
d, err := getCgroupData(m.Cgroups, 0) paths := m.GetPaths()
if err != nil { dir := paths["freezer"]
return err
}
dir, err := d.path("freezer")
if err != nil {
return err
}
prevState := m.Cgroups.Resources.Freezer prevState := m.Cgroups.Resources.Freezer
m.Cgroups.Resources.Freezer = state m.Cgroups.Resources.Freezer = state
freezer, err := subsystems.Get("freezer") freezer, err := subsystems.Get("freezer")