linux-sg2042/kernel/sched
Tejun Heo c53593e5cb sched, cgroup: Don't reject lower cpu.max on ancestors
While adding cgroup2 interface for the cpu controller, 0d5936344f
("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: Tejun Heo <tj@kernel.org>
Fixes: 0d5936344f ("sched: Implement interface for cgroup unified hierarchy")
Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: stable@vger.kernel.org # v4.15+
2018-02-12 09:23:46 -08:00
..
Makefile Merge branch 'linus' into sched/core, to pick up fixes 2017-11-08 10:17:15 +01:00
autogroup.c sched/autogroup: move sched.h include 2017-12-08 13:51:50 +01:00
autogroup.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
clock.c sched/clock, sched/cputime: Use lockdep to assert IRQs are disabled/enabled 2017-11-08 11:13:53 +01:00
completion.c locking/lockdep: Remove cross-release leftovers 2018-01-08 17:30:45 +01:00
core.c sched, cgroup: Don't reject lower cpu.max on ancestors 2018-02-12 09:23:46 -08:00
cpuacct.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
cpudeadline.c sched/deadline: Change return value of cpudl_find() 2017-08-10 12:18:17 +02:00
cpudeadline.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
cpufreq.c cpufreq / sched: Pass flags to cpufreq_update_util() 2016-08-16 22:14:55 +02:00
cpufreq_schedutil.c sched/cpufreq: Always consider all CPUs when deciding next freq 2018-01-10 12:53:34 +01:00
cpupri.c sched/cpupri: Don't re-initialize 'struct cpupri' 2017-08-10 12:18:14 +02:00
cpupri.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
cputime.c Merge branch 'for-4.15' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup 2017-11-15 14:29:44 -08:00
deadline.c sched/deadline: Make bandwidth enforcement scale-invariant 2018-01-10 12:53:35 +01:00
debug.c sched/fair: Propagate an effective runnable_load_avg 2017-09-29 19:35:15 +02:00
fair.c sched/fair: Use a recently used CPU as an idle candidate and the basis for SIS 2018-02-06 10:20:37 +01:00
features.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
idle.c sched/idle: Micro-optimize the idle loop 2017-10-26 08:31:29 +02:00
idle_task.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
isolation.c sched/isolation: Add basic isolcpus flags 2017-10-27 09:55:31 +02:00
loadavg.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
membarrier.c membarrier: Provide core serializing command, *_SYNC_CORE 2018-02-05 21:35:03 +01:00
rt.c sched/rt: Make update_curr_rt() more accurate 2018-02-06 10:20:34 +01:00
sched-pelt.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
sched.h sched/rt: Up the root domain ref count when passing it around via IPIs 2018-02-06 10:20:33 +01:00
stats.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
stats.h sched/core: Optimize update_stats_*() 2018-02-06 10:20:32 +01:00
stop_task.c Merge branch 'for-4.15' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup 2017-11-15 14:29:44 -08:00
swait.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
topology.c sched/rt: Up the root domain ref count when passing it around via IPIs 2018-02-06 10:20:33 +01:00
wait.c sched/wait: Fix add_wait_queue() behavioral change 2017-12-06 19:30:34 +01:00
wait_bit.c Pass mode to wait_on_atomic_t() action funcs and provide default actions 2017-11-13 15:38:16 +00:00