diff --git a/kernel/sched/core.c b/kernel/sched/core.c index ceb8655e03368f922834ce2b4605a486296454fc..468427a25c9de48cc494b77193139d03cdfcc6d5 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -8060,6 +8060,10 @@ int sched_cpu_deactivate(unsigned int cpu) ret = cpuset_cpu_inactive(cpu); if (ret) { +#ifdef CONFIG_SCHED_SMT + if (cpumask_weight(cpu_smt_mask(cpu)) == 2) + static_branch_inc_cpuslocked(&sched_smt_present); +#endif set_cpu_active(cpu, true); return ret; }