From 4e2c7c39796f034c06baa34f6d7e01b80f1a4395 Mon Sep 17 00:00:00 2001 From: Pavankumar Kondeti Date: Sat, 13 Jun 2020 09:53:05 +0530 Subject: [PATCH] sched/fair: Depend on sched_asym_cpucapacity for new ilb We have made the new idle CPU selection for load balance energy aware. For example, if a silver CPU does not have any misfit tasks but is overloaded, we have to select a silver CPU not gold CPU. However, this extra checks are needed only when the system has asymmetric capacity CPUs. So we should depend on sched_asym_cpucapacity feature instead of sched_energy_present. Later patches enable sched_energy_present for SMP systems also. Change-Id: Ie4fae9d1c17511f15b48b92dd61395d1689e1612 Signed-off-by: Pavankumar Kondeti --- kernel/sched/fair.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c index 53316f6f2b9d..f71f12e6b286 100755 --- a/kernel/sched/fair.c +++ b/kernel/sched/fair.c @@ -10708,11 +10708,15 @@ static inline int find_new_ilb(void) { int ilb; - if (sched_energy_enabled()) + if (static_branch_likely(&sched_asym_cpucapacity)) return find_energy_aware_new_ilb(); for_each_cpu_and(ilb, nohz.idle_cpus_mask, housekeeping_cpumask(HK_FLAG_MISC)) { +#ifdef CONFIG_SCHED_WALT + if (cpu_isolated(ilb)) + continue; +#endif if (idle_cpu(ilb)) return ilb; }