public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH tip] [PATCH]sched/fair: Fix endless loop in idle_balance()
@ 2014-03-06 15:16 Kirill Tkhai
  2014-03-06 15:57 ` Peter Zijlstra
  2014-03-11 12:40 ` [tip:sched/core] sched/fair: " tip-bot for Kirill Tkhai
  0 siblings, 2 replies; 3+ messages in thread
From: Kirill Tkhai @ 2014-03-06 15:16 UTC (permalink / raw)
  To: linux-kernel; +Cc: Peter Zijlstra, Ingo Molnar


This patch must go on top of the series:

[tip 1/2] sched/fair: Push down check for high priority class task into idle_balance()
[tip 2/2] sched/core: Fix endless loop in pick_next_task()

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: Kirill Tkhai <ktkhai@parallels.com>
CC: Peter Zijlstra <peterz@infradead.org>
CC: Ingo Molnar <mingo@redhat.com>

Peter, this finaly fixes problem with RT throttling.
Should I send all three patches as one series?
---
 kernel/sched/fair.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
index 10db4a8..f1eedae 100644
--- a/kernel/sched/fair.c
+++ b/kernel/sched/fair.c
@@ -6710,7 +6710,7 @@ static int idle_balance(struct rq *this_rq)
 	 * While browsing the domains, we released the rq lock.
 	 * 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;
 		goto out;
 	}




^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2014-03-11 12:40 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-03-06 15:16 [PATCH tip] [PATCH]sched/fair: Fix endless loop in idle_balance() Kirill Tkhai
2014-03-06 15:57 ` Peter Zijlstra
2014-03-11 12:40 ` [tip:sched/core] sched/fair: " tip-bot for Kirill Tkhai

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox