Commit fe7a11c7 authored by Yang Yingliang's avatar Yang Yingliang Committed by Peter Zijlstra

sched/core: Fix unbalance set_rq_online/offline() in sched_cpu_deactivate()

If cpuset_cpu_inactive() fails, set_rq_online() need be called to rollback.

Fixes: 120455c5 ("sched: Fix hotplug vs CPU bandwidth control")
Cc: stable@kernel.org
Signed-off-by: default avatarYang Yingliang <yangyingliang@huawei.com>
Signed-off-by: default avatarPeter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lore.kernel.org/r/20240703031610.587047-5-yangyingliang@huaweicloud.com
parent 2f027354
...@@ -8022,6 +8022,7 @@ int sched_cpu_deactivate(unsigned int cpu) ...@@ -8022,6 +8022,7 @@ int sched_cpu_deactivate(unsigned int cpu)
ret = cpuset_cpu_inactive(cpu); ret = cpuset_cpu_inactive(cpu);
if (ret) { if (ret) {
sched_smt_present_inc(cpu); sched_smt_present_inc(cpu);
sched_set_rq_online(rq, cpu);
balance_push_set(cpu, false); balance_push_set(cpu, false);
set_cpu_active(cpu, true); set_cpu_active(cpu, true);
sched_update_numa(cpu, true); sched_update_numa(cpu, true);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment