|
@@ -2512,7 +2512,7 @@ group_next:
|
|
|
* a think about bumping its value to force at least one task to be
|
|
|
* moved
|
|
|
*/
|
|
|
- if (*imbalance + SCHED_LOAD_SCALE_FUZZ < busiest_load_per_task) {
|
|
|
+ if (*imbalance < busiest_load_per_task) {
|
|
|
unsigned long tmp, pwr_now, pwr_move;
|
|
|
unsigned int imbn;
|
|
|
|
|
@@ -2564,10 +2564,8 @@ small_imbalance:
|
|
|
pwr_move /= SCHED_LOAD_SCALE;
|
|
|
|
|
|
/* Move if we gain throughput */
|
|
|
- if (pwr_move <= pwr_now)
|
|
|
- goto out_balanced;
|
|
|
-
|
|
|
- *imbalance = busiest_load_per_task;
|
|
|
+ if (pwr_move > pwr_now)
|
|
|
+ *imbalance = busiest_load_per_task;
|
|
|
}
|
|
|
|
|
|
return busiest;
|