diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c index 8c74c2f60d4b..169b74276af6 100644 --- a/kernel/sched/fair.c +++ b/kernel/sched/fair.c @@ -8174,7 +8174,7 @@ static int detach_tasks(struct lb_env *env) case migrate_util: util = task_util_est(p); - if (util > env->imbalance) + if (shr_bound(util, env->sd->nr_balance_failed) > env->imbalance) goto next; env->imbalance -= util;