[PATCH v2 3/3] sched/fair: Delete resched_cpu() from idle_balance()

Kirill Tkhai
2014-09-30T21:04:50Z

From: Kirill Tkhai <ktkhai@parallels.com>

We already reschedule env.dst_cpu in attach_tasks()->check_preempt_curr()
if this is necessary.

Furthermore, a higher priority class task may be current on dest rq,
we shouldn't disturb it.

Signed-off-by: Kirill Tkhai <ktkhai@parallels.com>
---
kernel/sched/fair.c | 6 ------
1 file changed, 6 deletions(-)

diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
index 10a5a28..8265601 100644
--- a/kernel/sched/fair.c
+++ b/kernel/sched/fair.c
@@ -6700,12 +6700,6 @@ static int load_balance(int this_cpu, struct rq *this_rq,

local_irq_restore(flags);

- /*
- * some other cpu did the load balance for us.
- */
- if (cur_ld_moved && env.dst_cpu != smp_processor_id())
- resched_cpu(env.dst_cpu);
-
if (env.flags & LBF_NEED_BREAK) {
env.flags &= ~LBF_NEED_BREAK;
goto more_balance;