sched: Factor out the on_null_domain() checks in trigger_load_balance()
The test on_null_domain is done twice in the trigger_load_balance function. Move the test at the begin of the function, so there is only one check. Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org> Signed-off-by: Peter Zijlstra <peterz@infradead.org> Link: http://lkml.kernel.org/r/1389008085-9069-9-git-send-email-daniel.lezcano@linaro.org Signed-off-by: Ingo Molnar <mingo@kernel.org>
This commit is contained in:
committed by
Ingo Molnar
parent
208cb16ba3
commit
c726099ec2
@@ -6878,11 +6878,13 @@ static inline int on_null_domain(struct rq *rq)
|
|||||||
void trigger_load_balance(struct rq *rq)
|
void trigger_load_balance(struct rq *rq)
|
||||||
{
|
{
|
||||||
/* Don't need to rebalance while attached to NULL domain */
|
/* Don't need to rebalance while attached to NULL domain */
|
||||||
if (time_after_eq(jiffies, rq->next_balance) &&
|
if (unlikely(on_null_domain(rq)))
|
||||||
likely(!on_null_domain(rq)))
|
return;
|
||||||
|
|
||||||
|
if (time_after_eq(jiffies, rq->next_balance))
|
||||||
raise_softirq(SCHED_SOFTIRQ);
|
raise_softirq(SCHED_SOFTIRQ);
|
||||||
#ifdef CONFIG_NO_HZ_COMMON
|
#ifdef CONFIG_NO_HZ_COMMON
|
||||||
if (nohz_kick_needed(rq) && likely(!on_null_domain(rq)))
|
if (nohz_kick_needed(rq))
|
||||||
nohz_balancer_kick();
|
nohz_balancer_kick();
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user