]> git.baikalelectronics.ru Git - kernel.git/commit
sched: Unthrottle rt runqueues in __disable_runtime()
authorPeter Boonstoppel <pboonstoppel@nvidia.com>
Thu, 9 Aug 2012 22:34:47 +0000 (15:34 -0700)
committerIngo Molnar <mingo@kernel.org>
Tue, 4 Sep 2012 12:30:30 +0000 (14:30 +0200)
commit74c975747904a5900b1fa8980866bed7a08dab9f
treee93b18f6ca2d2a734962ee880d8e2cb7bd1e42b0
parent67754ed06358e84f8762e0f241049e21345c376a
sched: Unthrottle rt runqueues in __disable_runtime()

migrate_tasks() uses _pick_next_task_rt() to get tasks from the
real-time runqueues to be migrated. When rt_rq is throttled
_pick_next_task_rt() won't return anything, in which case
migrate_tasks() can't move all threads over and gets stuck in an
infinite loop.

Instead unthrottle rt runqueues before migrating tasks.

Additionally: move unthrottle_offline_cfs_rqs() to rq_offline_fair()

Signed-off-by: Peter Boonstoppel <pboonstoppel@nvidia.com>
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Paul Turner <pjt@google.com>
Link: http://lkml.kernel.org/r/5FBF8E85CA34454794F0F7ECBA79798F379D3648B7@HQMAIL04.nvidia.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
kernel/sched/core.c
kernel/sched/fair.c
kernel/sched/rt.c
kernel/sched/sched.h