By checking local_group, we can avoid additional checks and invoking sched_asmy_prefer() when it is not needed.
Cc: Aubrey Li <aubrey...@intel.com> Cc: Ben Segall <bseg...@google.com> Cc: Daniel Bristot de Oliveira <bris...@redhat.com> Cc: Dietmar Eggemann <dietmar.eggem...@arm.com> Cc: Joel Fernandes (Google) <j...@joelfernandes.org> Cc: Mel Gorman <mgor...@suse.de> Cc: Quentin Perret <qper...@google.com> Cc: Srinivas Pandruvada <srinivas.pandruv...@linux.intel.com> Cc: Steven Rostedt <rost...@goodmis.org> Cc: Tim Chen <tim.c.c...@linux.intel.com> Reviewed-by: Len Brown <len.br...@intel.com> Signed-off-by: Ricardo Neri <ricardo.neri-calde...@linux.intel.com> --- kernel/sched/fair.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c index 04a3ce20da67..4ef3fa0d5e8d 100644 --- a/kernel/sched/fair.c +++ b/kernel/sched/fair.c @@ -8455,7 +8455,7 @@ static inline void update_sg_lb_stats(struct lb_env *env, } /* Check if dst CPU is idle and preferred to this group */ - if (env->sd->flags & SD_ASYM_PACKING && + if (!local_group && env->sd->flags & SD_ASYM_PACKING && env->idle != CPU_NOT_IDLE && sgs->sum_h_nr_running && sched_asym_prefer(env->dst_cpu, group->asym_prefer_cpu)) { -- 2.17.1