in agent/cgroup/group_cpu.go [24:68]
func (g *CpuGroup) Set(c *Config) error {
if c.CpuShares != 0 {
if err := writeValue(g.path, "cpu.shares", strconv.FormatInt(c.CpuShares, 10)); err != nil {
return err
}
}
if c.CpuPeriod != 0 {
switch err := writeValue(g.path, "cpu.cfs_period_us", strconv.FormatInt(c.CpuPeriod, 10)); {
case err == nil:
case os.IsNotExist(err):
return ErrCfsNotEnabled
default:
return err
}
}
if c.CpuQuota != 0 {
switch err := writeValue(g.path, "cpu.cfs_quota_us", strconv.FormatInt(c.CpuQuota, 10)); {
case err == nil:
case os.IsNotExist(err):
return ErrCfsNotEnabled
default:
return err
}
}
if c.CpuRtPeriod != 0 {
switch err := writeValue(g.path, "cpu.rt_period_us", strconv.FormatInt(c.CpuRtPeriod, 10)); {
case err == nil:
case os.IsNotExist(err):
return ErrRtNotEnabled
default:
return err
}
}
if c.CpuRtRuntime != 0 {
switch err := writeValue(g.path, "cpu.rt_runtime_us", strconv.FormatInt(c.CpuRtRuntime, 10)); {
case err == nil:
case os.IsNotExist(err):
return ErrRtNotEnabled
default:
return err
}
}
return nil
}