提交 35805ff8 编写于 作者: K Kirill Tkhai 提交者: Ingo Molnar

sched/fair: Fix endless loop in idle_balance()

Check for fair tasks number to decide, that we've pulled a task.
rq's nr_running may contain throttled RT tasks.
Signed-off-by: NKirill Tkhai <ktkhai@parallels.com>
Signed-off-by: NPeter Zijlstra <peterz@infradead.org>
Link: http://lkml.kernel.org/r/1394118975.19290.104.camel@tkhaiSigned-off-by: NIngo Molnar <mingo@kernel.org>
上级 4c6c4e38
...@@ -6710,7 +6710,7 @@ static int idle_balance(struct rq *this_rq) ...@@ -6710,7 +6710,7 @@ static int idle_balance(struct rq *this_rq)
* While browsing the domains, we released the rq lock. * While browsing the domains, we released the rq lock.
* A task could have be enqueued in the meantime * A task could have be enqueued in the meantime
*/ */
if (this_rq->nr_running && !pulled_task) { if (this_rq->cfs.h_nr_running && !pulled_task) {
pulled_task = 1; pulled_task = 1;
goto out; goto out;
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册