From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752926AbbC3MzG (ORCPT ); Mon, 30 Mar 2015 08:55:06 -0400 Received: from casper.infradead.org ([85.118.1.10]:32858 "EHLO casper.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752890AbbC3MzD (ORCPT ); Mon, 30 Mar 2015 08:55:03 -0400 Date: Mon, 30 Mar 2015 14:54:50 +0200 From: Peter Zijlstra To: Morten Rasmussen Cc: Preeti U Murthy , "mingo@kernel.org" , "riel@redhat.com" , "daniel.lezcano@linaro.org" , "vincent.guittot@linaro.org" , "srikar@linux.vnet.ibm.com" , "pjt@google.com" , "benh@kernel.crashing.org" , "efault@gmx.de" , "linux-kernel@vger.kernel.org" , "iamjoonsoo.kim@lge.com" , "svaidy@linux.vnet.ibm.com" , "tim.c.chen@linux.intel.com" , "jason.low2@hp.com" Subject: Re: [PATCH V2] sched: Improve load balancing in the presence of idle CPUs Message-ID: <20150330125450.GL24151@twins.programming.kicks-ass.net> References: <20150326130014.21532.17158.stgit@preeti.in.ibm.com> <20150327143839.GO18994@e105550-lin.cambridge.arm.com> <55158966.4050300@linux.vnet.ibm.com> <20150327175651.GR18994@e105550-lin.cambridge.arm.com> <20150330110632.GT23123@twins.programming.kicks-ass.net> <20150330120302.GT18994@e105550-lin.cambridge.arm.com> <20150330122449.GH21418@twins.programming.kicks-ass.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20150330122449.GH21418@twins.programming.kicks-ass.net> 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 Mon, Mar 30, 2015 at 02:24:49PM +0200, Peter Zijlstra wrote: > @@ -7647,6 +7648,8 @@ static void nohz_idle_balance(struct rq *this_rq, enum cpu_idle_type idle) > break; > > rq = cpu_rq(balance_cpu); > + if (rq == this_rq) > + done = true; > > /* > * If time for next balance is due, Equally note that if you change find_new_ilb() to not pick the very first cpu in the mask you already get the bouncy bounce, because this routine will in fact try and move things to the first cpu first. So if you go change find_new_ilb() you should also amend the iteration order here.