diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
index f12d004be6a19c9cff71e8e2504f3e91bb696776..fc9a484ef82b009685f7354ba0337fe519792bd6 100644
--- a/kernel/sched/fair.c
+++ b/kernel/sched/fair.c
@@ -8275,7 +8275,7 @@ static struct sched_group *find_busiest_group(struct lb_env *env)
 force_balance:
 	/* Looks like there is an imbalance. Compute it */
 	calculate_imbalance(env, &sds);
-	return sds.busiest;
+	return env->imbalance ? sds.busiest : NULL;
 
 out_balanced:
 	env->imbalance = 0;