Messages in this thread | | | Date | Thu, 18 Dec 2008 23:42:52 +0530 | From | Balbir Singh <> | Subject | Re: [PATCH v7 8/8] sched: idle_balance() does not call load_balance_newidle() |
| |
* Vaidyanathan Srinivasan <svaidy@linux.vnet.ibm.com> [2008-12-18 23:26:59]:
> 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 <svaidy@linux.vnet.ibm.com> > --- > > 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; >
Isn't this already in Ingo's patch queue?
-- Balbir
| |