Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f5438882 authored by Runmin Wang's avatar Runmin Wang
Browse files

sched: fair: mark parent domain overutilized if !SD_LOAD_BALANCE



If sd does not have SD_LOAD_BALANCE flag set, load balancer code will
not be run. As a result, the overutilized flag could be set by the tick
path but never be cleared from rebalance_domain. Instead of setting
local sd as overutilized, propagate it to parent sd.

Change-Id: Ib08b0ea0da568e6298fdaa895717c0a4a2134f4c
Signed-off-by: default avatarRunmin Wang <runminw@codeaurora.org>
parent 6401e390
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -5003,9 +5003,10 @@ static inline void update_overutilized_status(struct rq *rq)

	rcu_read_lock();
	sd = rcu_dereference(rq->sd);
	if (sd && !sd_overutilized(sd) &&
	    cpu_overutilized(rq->cpu))
	if (sd && (sd->flags & SD_LOAD_BALANCE))
		set_sd_overutilized(sd);
	else if (sd && sd->parent)
		set_sd_overutilized(sd->parent);
	rcu_read_unlock();
}
#else