|
@@ -6640,10 +6640,10 @@ void update_max_interval(void)
|
|
|
*
|
|
|
* Balancing parameters are set up in init_sched_domains.
|
|
|
*/
|
|
|
-static void rebalance_domains(int cpu, enum cpu_idle_type idle)
|
|
|
+static void rebalance_domains(struct rq *rq, enum cpu_idle_type idle)
|
|
|
{
|
|
|
int continue_balancing = 1;
|
|
|
- struct rq *rq = cpu_rq(cpu);
|
|
|
+ int cpu = rq->cpu;
|
|
|
unsigned long interval;
|
|
|
struct sched_domain *sd;
|
|
|
/* Earliest time when we have to do rebalance again */
|
|
@@ -6769,7 +6769,7 @@ static void nohz_idle_balance(int this_cpu, enum cpu_idle_type idle)
|
|
|
update_idle_cpu_load(rq);
|
|
|
raw_spin_unlock_irq(&rq->lock);
|
|
|
|
|
|
- rebalance_domains(balance_cpu, CPU_IDLE);
|
|
|
+ rebalance_domains(rq, CPU_IDLE);
|
|
|
|
|
|
if (time_after(this_rq->next_balance, rq->next_balance))
|
|
|
this_rq->next_balance = rq->next_balance;
|
|
@@ -6858,7 +6858,7 @@ static void run_rebalance_domains(struct softirq_action *h)
|
|
|
enum cpu_idle_type idle = this_rq->idle_balance ?
|
|
|
CPU_IDLE : CPU_NOT_IDLE;
|
|
|
|
|
|
- rebalance_domains(this_cpu, idle);
|
|
|
+ rebalance_domains(this_rq, idle);
|
|
|
|
|
|
/*
|
|
|
* If this cpu has a pending nohz_balance_kick, then do the
|