]> git.baikalelectronics.ru Git - kernel.git/commit
sched/core: Fix reset-on-fork from RT with uclamp
authorQuentin Perret <qperret@google.com>
Thu, 16 Apr 2020 08:59:56 +0000 (09:59 +0100)
committerPeter Zijlstra <peterz@infradead.org>
Wed, 22 Apr 2020 21:10:13 +0000 (23:10 +0200)
commitf1f33ed687665be2822852c23178d65d0ed523e4
tree2aeb36e9b491ab5f5ad9049c5abf2b7d123dab1e
parentfb9c4fa6cd9a40ef3f9101ae152a7ba2092d2842
sched/core: Fix reset-on-fork from RT with uclamp

uclamp_fork() resets the uclamp values to their default when the
reset-on-fork flag is set. It also checks whether the task has a RT
policy, and sets its uclamp.min to 1024 accordingly. However, during
reset-on-fork, the task's policy is lowered to SCHED_NORMAL right after,
hence leading to an erroneous uclamp.min setting for the new task if it
was forked from RT.

Fix this by removing the unnecessary check on rt_task() in
uclamp_fork() as this doesn't make sense if the reset-on-fork flag is
set.

Fixes: d4bae0314aee ("sched/uclamp: Set default clamps for RT tasks")
Reported-by: Chitti Babu Theegala <ctheegal@codeaurora.org>
Signed-off-by: Quentin Perret <qperret@google.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Reviewed-by: Patrick Bellasi <patrick.bellasi@matbug.net>
Reviewed-by: Dietmar Eggemann <dietmar.eggemann@arm.com>
Link: https://lkml.kernel.org/r/20200416085956.217587-1-qperret@google.com
kernel/sched/core.c