Loading kernel/sched/fair.c +8 −1 Original line number Diff line number Diff line Loading @@ -10443,9 +10443,16 @@ static int load_balance(int this_cpu, struct rq *this_rq, raw_spin_unlock_irqrestore(&busiest->lock, flags); if (active_balance) { stop_one_cpu_nowait(cpu_of(busiest), int ret; ret = stop_one_cpu_nowait(cpu_of(busiest), active_load_balance_cpu_stop, busiest, &busiest->active_balance_work); if (!ret) { clear_reserved(this_cpu); busiest->active_balance = 0; active_balance = 0; } *continue_balancing = 0; } Loading kernel/sched/walt/walt.c +1 −1 Original line number Diff line number Diff line Loading @@ -500,10 +500,10 @@ void clear_walt_request(int cpu) raw_spin_lock_irqsave(&rq->lock, flags); if (rq->wrq.push_task) { clear_reserved(rq->push_cpu); push_task = rq->wrq.push_task; rq->wrq.push_task = NULL; } clear_reserved(rq->push_cpu); rq->active_balance = 0; raw_spin_unlock_irqrestore(&rq->lock, flags); if (push_task) Loading Loading
kernel/sched/fair.c +8 −1 Original line number Diff line number Diff line Loading @@ -10443,9 +10443,16 @@ static int load_balance(int this_cpu, struct rq *this_rq, raw_spin_unlock_irqrestore(&busiest->lock, flags); if (active_balance) { stop_one_cpu_nowait(cpu_of(busiest), int ret; ret = stop_one_cpu_nowait(cpu_of(busiest), active_load_balance_cpu_stop, busiest, &busiest->active_balance_work); if (!ret) { clear_reserved(this_cpu); busiest->active_balance = 0; active_balance = 0; } *continue_balancing = 0; } Loading
kernel/sched/walt/walt.c +1 −1 Original line number Diff line number Diff line Loading @@ -500,10 +500,10 @@ void clear_walt_request(int cpu) raw_spin_lock_irqsave(&rq->lock, flags); if (rq->wrq.push_task) { clear_reserved(rq->push_cpu); push_task = rq->wrq.push_task; rq->wrq.push_task = NULL; } clear_reserved(rq->push_cpu); rq->active_balance = 0; raw_spin_unlock_irqrestore(&rq->lock, flags); if (push_task) Loading