Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 323918
b: refs/heads/master
c: 78feefc
h: refs/heads/master
v: v3
  • Loading branch information
Michael Wang authored and Thomas Gleixner committed Aug 13, 2012
1 parent 53f834c commit dac98b3
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 6 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: edde96eafc91a510f404e7b82cfc0ecb608505ee
refs/heads/master: 78feefc512a09165627dd534111f651b6c8e605f
9 changes: 4 additions & 5 deletions trunk/kernel/sched/fair.c
Original file line number Diff line number Diff line change
Expand Up @@ -4283,7 +4283,7 @@ static int load_balance(int this_cpu, struct rq *this_rq,
goto out_balanced;
}

BUG_ON(busiest == this_rq);
BUG_ON(busiest == env.dst_rq);

schedstat_add(sd, lb_imbalance[idle], env.imbalance);

Expand All @@ -4304,15 +4304,15 @@ static int load_balance(int this_cpu, struct rq *this_rq,
update_h_load(env.src_cpu);
more_balance:
local_irq_save(flags);
double_rq_lock(this_rq, busiest);
double_rq_lock(env.dst_rq, busiest);

/*
* cur_ld_moved - load moved in current iteration
* ld_moved - cumulative load moved across iterations
*/
cur_ld_moved = move_tasks(&env);
ld_moved += cur_ld_moved;
double_rq_unlock(this_rq, busiest);
double_rq_unlock(env.dst_rq, busiest);
local_irq_restore(flags);

if (env.flags & LBF_NEED_BREAK) {
Expand Down Expand Up @@ -4348,8 +4348,7 @@ static int load_balance(int this_cpu, struct rq *this_rq,
if ((env.flags & LBF_SOME_PINNED) && env.imbalance > 0 &&
lb_iterations++ < max_lb_iterations) {

this_rq = cpu_rq(env.new_dst_cpu);
env.dst_rq = this_rq;
env.dst_rq = cpu_rq(env.new_dst_cpu);
env.dst_cpu = env.new_dst_cpu;
env.flags &= ~LBF_SOME_PINNED;
env.loop = 0;
Expand Down

0 comments on commit dac98b3

Please sign in to comment.