Re: [PATCH v4.15-rc9] sched, cgroup: Don't reject lower cpu.max on ancestors

From: Peter Zijlstra
Date: Tue Jan 30 2018 - 05:22:10 EST


On Mon, Jan 22, 2018 at 11:26:18AM -0800, Tejun Heo wrote:
> While adding cgroup2 interface for the cpu controller, 0d5936344f30
> ("sched: Implement interface for cgroup unified hierarchy") forgot to
> update input validation and left it to reject cpu.max config if any
> descendant has set a higher value.
>
> cgroup2 officially supports delegation and a descendant must not be
> able to restrict what its ancestors can configure. For absolute
> limits such as cpu.max and memory.max, this means that the config at
> each level should only act as the upper limit at that level and
> shouldn't interfere with what other cgroups can configure.

*blink* what?

afaiu the existing code does exactly the opposite, it forces the
descendants to configure less than the parent allows.

You're taking out an error condition and silently allowing descentant
misconfiguration. How does that make sense?