func()

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
}