• Tejun Heo's avatar
    sched, cgroup: Don't reject lower cpu.max on ancestors · c53593e5
    Tejun Heo authored
    While adding cgroup2 interface for the cpu controller, 0d593634
    ("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.
    
    This patch updates config validation on cgroup2 so that the cpu
    controller follows the same convention.
    Signed-off-by: default avatarTejun Heo <tj@kernel.org>
    Fixes: 0d593634 ("sched: Implement interface for cgroup unified hierarchy")
    Acked-by: default avatarPeter Zijlstra (Intel) <peterz@infradead.org>
    Cc: stable@vger.kernel.org # v4.15+
    c53593e5
core.c 173 KB