From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932192AbbCXQCx (ORCPT ); Tue, 24 Mar 2015 12:02:53 -0400 Received: from casper.infradead.org ([85.118.1.10]:36461 "EHLO casper.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932081AbbCXQCs (ORCPT ); Tue, 24 Mar 2015 12:02:48 -0400 Date: Tue, 24 Mar 2015 17:02:40 +0100 From: Peter Zijlstra To: Morten Rasmussen Cc: mingo@redhat.com, vincent.guittot@linaro.org, dietmar.eggemann@arm.com, yuyang.du@intel.com, preeti@linux.vnet.ibm.com, mturquette@linaro.org, nico@linaro.org, rjw@rjwysocki.net, juri.lelli@arm.com, linux-kernel@vger.kernel.org Subject: Re: [RFCv3 PATCH 47/48] sched: Enable active migration for cpus of lower capacity Message-ID: <20150324160240.GW23123@twins.programming.kicks-ass.net> References: <1423074685-6336-1-git-send-email-morten.rasmussen@arm.com> <1423074685-6336-48-git-send-email-morten.rasmussen@arm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1423074685-6336-48-git-send-email-morten.rasmussen@arm.com> User-Agent: Mutt/1.5.21 (2012-12-30) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Feb 04, 2015 at 06:31:24PM +0000, Morten Rasmussen wrote: > Add an extra criteria to need_active_balance() to kick off active load > balance if the source cpu is overutilized and has lower capacity than > the destination cpus. > > cc: Ingo Molnar > cc: Peter Zijlstra > > Signed-off-by: Morten Rasmussen > --- > kernel/sched/fair.c | 7 +++++++ > 1 file changed, 7 insertions(+) > > diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c > index 92fd1d8..1c248f8 100644 > --- a/kernel/sched/fair.c > +++ b/kernel/sched/fair.c > @@ -7379,6 +7379,13 @@ static int need_active_balance(struct lb_env *env) > return 1; > } > > + if ((capacity_of(env->src_cpu) < capacity_of(env->dst_cpu)) && > + env->src_rq->cfs.h_nr_running == 1 && > + cpu_overutilized(env->src_cpu, env->sd) && > + !cpu_overutilized(env->dst_cpu, env->sd)) { > + return 1; > + } Ah, see does this want to get squashed into the previuos patch? Together they seem to make more sense.