diff options
author | Ricardo Neri <ricardo.neri-calderon@linux.intel.com> | 2023-04-06 22:31:37 +0200 |
---|---|---|
committer | Peter Zijlstra <peterz@infradead.org> | 2023-05-08 10:58:33 +0200 |
commit | 8b36d07f1d63de102d464f44a89704bc62d00811 (patch) | |
tree | 5d382d456729353fdce8804972ba7521c761857f /kernel/sched/fair.c | |
parent | Linux 6.4-rc1 (diff) | |
download | linux-8b36d07f1d63de102d464f44a89704bc62d00811.tar.xz linux-8b36d07f1d63de102d464f44a89704bc62d00811.zip |
sched/fair: Move is_core_idle() out of CONFIG_NUMA
asym_packing needs this function to determine whether an SMT core is a
suitable destination for load balancing.
Signed-off-by: Ricardo Neri <ricardo.neri-calderon@linux.intel.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Tested-by: Zhang Rui <rui.zhang@intel.com>
Link: https://lore.kernel.org/r/20230406203148.19182-2-ricardo.neri-calderon@linux.intel.com
Diffstat (limited to 'kernel/sched/fair.c')
-rw-r--r-- | kernel/sched/fair.c | 34 |
1 files changed, 17 insertions, 17 deletions
diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c index 373ff5f55884..a47208dbb42a 100644 --- a/kernel/sched/fair.c +++ b/kernel/sched/fair.c @@ -1064,6 +1064,23 @@ update_stats_curr_start(struct cfs_rq *cfs_rq, struct sched_entity *se) * Scheduling class queueing methods: */ +static inline bool is_core_idle(int cpu) +{ +#ifdef CONFIG_SCHED_SMT + int sibling; + + for_each_cpu(sibling, cpu_smt_mask(cpu)) { + if (cpu == sibling) + continue; + + if (!idle_cpu(sibling)) + return false; + } +#endif + + return true; +} + #ifdef CONFIG_NUMA #define NUMA_IMBALANCE_MIN 2 @@ -1700,23 +1717,6 @@ struct numa_stats { int idle_cpu; }; -static inline bool is_core_idle(int cpu) -{ -#ifdef CONFIG_SCHED_SMT - int sibling; - - for_each_cpu(sibling, cpu_smt_mask(cpu)) { - if (cpu == sibling) - continue; - - if (!idle_cpu(sibling)) - return false; - } -#endif - - return true; -} - struct task_numa_env { struct task_struct *p; |