From 8f0cb2f1ea3a8d97a82e41e383feed37dd4d86bf Mon Sep 17 00:00:00 2001 From: Eric Ernst Date: Mon, 12 Oct 2020 17:12:26 -0700 Subject: [PATCH] cgroups: add ability to update CPUSet Add function for applying a cpuset change to a cgroup Signed-off-by: Eric Ernst --- src/runtime/virtcontainers/pkg/cgroups/manager.go | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/runtime/virtcontainers/pkg/cgroups/manager.go b/src/runtime/virtcontainers/pkg/cgroups/manager.go index fc3462c13e..e0f81777a1 100644 --- a/src/runtime/virtcontainers/pkg/cgroups/manager.go +++ b/src/runtime/virtcontainers/pkg/cgroups/manager.go @@ -331,3 +331,16 @@ func (m *Manager) RemoveDevice(device string) error { m.Unlock() return fmt.Errorf("device %v not found in the cgroup", device) } + +func (m *Manager) SetCPUSet(cpuset string) error { + cgroups, err := m.GetCgroups() + if err != nil { + return err + } + + m.Lock() + cgroups.CpusetCpus = cpuset + m.Unlock() + + return m.Apply() +}