Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753243AbYLRRzP (ORCPT ); Thu, 18 Dec 2008 12:55:15 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1752898AbYLRRxt (ORCPT ); Thu, 18 Dec 2008 12:53:49 -0500 Received: from E23SMTP02.au.ibm.com ([202.81.18.163]:59557 "EHLO e23smtp02.au.ibm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753304AbYLRRxs (ORCPT ); Thu, 18 Dec 2008 12:53:48 -0500 From: Vaidyanathan Srinivasan Subject: [PATCH v7 8/8] sched: idle_balance() does not call load_balance_newidle() To: Linux Kernel , Suresh B Siddha , Venkatesh Pallipadi , Peter Zijlstra Cc: Ingo Molnar , Dipankar Sarma , Balbir Singh , Vatsa , Gautham R Shenoy , Andi Kleen , David Collier-Brown , Tim Connors , Max Krasnyansky , Gregory Haskins , Pavel Machek , Andrew Morton , Vaidyanathan Srinivasan Date: Thu, 18 Dec 2008 23:26:59 +0530 Message-ID: <20081218175658.29812.62512.stgit@drishya.in.ibm.com> In-Reply-To: <20081218175313.29812.4781.stgit@drishya.in.ibm.com> References: <20081218175313.29812.4781.stgit@drishya.in.ibm.com> User-Agent: StGIT/0.14.2 MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org load_balance_newidle() does not get called if SD_BALANCE_NEWIDLE is set at higher level domain (3-CPU) and not in low level domain (2-MC). pulled_task is initialised to -1 and checked for non-zero which is always true if the lowest level sched_domain does not have SD_BALANCE_NEWIDLE flag set. Trivial fix to initialise pulled_task to zero. This patch has been queued for 2.6.29 http://lkml.org/lkml/2008/12/8/213 Signed-off-by: Vaidyanathan Srinivasan --- kernel/sched.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/kernel/sched.c b/kernel/sched.c index f82a7a0..e6a88bf 100644 --- a/kernel/sched.c +++ b/kernel/sched.c @@ -3773,7 +3773,7 @@ out_balanced: static void idle_balance(int this_cpu, struct rq *this_rq) { struct sched_domain *sd; - int pulled_task = -1; + int pulled_task = 0; unsigned long next_balance = jiffies + HZ; cpumask_t tmpmask; -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/