The cpu information is already stored in the struct rq, so no need to pass it as parameter to the trigger_load_balance function.
Signed-off-by: Daniel Lezcano daniel.lezcano@linaro.org --- kernel/sched/core.c | 2 +- kernel/sched/fair.c | 4 +++- kernel/sched/sched.h | 2 +- 3 files changed, 5 insertions(+), 3 deletions(-)
diff --git a/kernel/sched/core.c b/kernel/sched/core.c index b21a63e..7007884 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -2299,7 +2299,7 @@ void scheduler_tick(void)
#ifdef CONFIG_SMP rq->idle_balance = idle_cpu(cpu); - trigger_load_balance(rq, cpu); + trigger_load_balance(rq); #endif rq_last_tick_reset(rq); } diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c index 4316af2..600301c 100644 --- a/kernel/sched/fair.c +++ b/kernel/sched/fair.c @@ -6869,8 +6869,10 @@ static inline int on_null_domain(int cpu) /* * Trigger the SCHED_SOFTIRQ if it is time to do periodic load balancing. */ -void trigger_load_balance(struct rq *rq, int cpu) +void trigger_load_balance(struct rq *rq) { + int cpu = rq->cpu; + /* Don't need to rebalance while attached to NULL domain */ if (time_after_eq(jiffies, rq->next_balance) && likely(!on_null_domain(cpu))) diff --git a/kernel/sched/sched.h b/kernel/sched/sched.h index b3b4a49..4f10d1a 100644 --- a/kernel/sched/sched.h +++ b/kernel/sched/sched.h @@ -1052,7 +1052,7 @@ extern const struct sched_class idle_sched_class;
extern void update_group_power(struct sched_domain *sd, int cpu);
-extern void trigger_load_balance(struct rq *rq, int cpu); +extern void trigger_load_balance(struct rq *rq); extern void idle_balance(int this_cpu, struct rq *this_rq);
extern void idle_enter_fair(struct rq *this_rq);