diff options
Diffstat (limited to 'kernel/sched/fair.c')
-rw-r--r-- | kernel/sched/fair.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c index d5583f9588e7..c099cc6eebe3 100644 --- a/kernel/sched/fair.c +++ b/kernel/sched/fair.c | |||
@@ -3602,7 +3602,7 @@ void update_group_power(struct sched_domain *sd, int cpu) | |||
3602 | } while (group != child->groups); | 3602 | } while (group != child->groups); |
3603 | } | 3603 | } |
3604 | 3604 | ||
3605 | sdg->sgp->power = power; | 3605 | sdg->sgp->power_orig = sdg->sgp->power = power; |
3606 | } | 3606 | } |
3607 | 3607 | ||
3608 | /* | 3608 | /* |
@@ -3652,7 +3652,7 @@ static inline void update_sg_lb_stats(struct lb_env *env, | |||
3652 | int i; | 3652 | int i; |
3653 | 3653 | ||
3654 | if (local_group) | 3654 | if (local_group) |
3655 | balance_cpu = group_first_cpu(group); | 3655 | balance_cpu = group_balance_cpu(group); |
3656 | 3656 | ||
3657 | /* Tally up the load of all CPUs in the group */ | 3657 | /* Tally up the load of all CPUs in the group */ |
3658 | max_cpu_load = 0; | 3658 | max_cpu_load = 0; |
@@ -3667,7 +3667,8 @@ static inline void update_sg_lb_stats(struct lb_env *env, | |||
3667 | 3667 | ||
3668 | /* Bias balancing toward cpus of our domain */ | 3668 | /* Bias balancing toward cpus of our domain */ |
3669 | if (local_group) { | 3669 | if (local_group) { |
3670 | if (idle_cpu(i) && !first_idle_cpu) { | 3670 | if (idle_cpu(i) && !first_idle_cpu && |
3671 | cpumask_test_cpu(i, sched_group_mask(group))) { | ||
3671 | first_idle_cpu = 1; | 3672 | first_idle_cpu = 1; |
3672 | balance_cpu = i; | 3673 | balance_cpu = i; |
3673 | } | 3674 | } |