From 44ab1611a8fa4ee1dc59a80b656f8b2e6aa4e57d Mon Sep 17 00:00:00 2001 From: Chris Redpath Date: Tue, 5 Jun 2018 12:21:33 +0100 Subject: [PATCH] ANDROID: sched/fair: Also do misfit in overloaded groups If we can classify the group as overloaded, that overrides any classification as misfit but we may still have misfit tasks present. Check the rq we're looking at to see if this is the case. Change-Id: Ida8eb66aa625e34de3fe2ee1b0dd8a78926273d8 Signed-off-by: Chris Redpath [Removed stray reference to rq_has_misfit] Signed-off-by: Valentin Schneider Signed-off-by: Quentin Perret --- kernel/sched/fair.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c index af23c63eca32..4012266f4f64 100644 --- a/kernel/sched/fair.c +++ b/kernel/sched/fair.c @@ -8798,6 +8798,9 @@ static int need_active_balance(struct lb_env *env) if (voluntary_active_balance(env)) return 1; + if (env->src_grp_type == group_overloaded && env->src_rq->misfit_task_load) + return 1; + return unlikely(sd->nr_balance_failed > sd->cache_nice_tries+2); }