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)
commita4c96ae319b8047f62dedbe1eac79e321c185749
treee93b18f6ca2d2a734962ee880d8e2cb7bd1e42b0
parent749c8814f08f12baa4a9c2812a7c6ede7d69507d
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