[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20061019134046.A2305@unix-os.sc.intel.com>
Date: Thu, 19 Oct 2006 13:40:46 -0700
From: "Siddha, Suresh B" <suresh.b.siddha@...el.com>
To: Christoph Lameter <clameter@....com>
Cc: "Siddha, Suresh B" <suresh.b.siddha@...el.com>,
Nick Piggin <nickpiggin@...oo.com.au>,
Ingo Molnar <mingo@...e.hu>,
Peter Williams <pwil3058@...pond.net.au>,
linux-kernel@...r.kernel.org
Subject: Re: [RFC] sched_tick with interrupts enabled
On Thu, Oct 19, 2006 at 08:50:50AM -0700, Christoph Lameter wrote:
> Ok. Thanks. Would this work?
>
> Index: linux-2.6.19-rc2-mm1/kernel/sched.c
> ===================================================================
> --- linux-2.6.19-rc2-mm1.orig/kernel/sched.c 2006-10-19 09:39:08.000000000 -0500
> +++ linux-2.6.19-rc2-mm1/kernel/sched.c 2006-10-19 09:42:10.733631242 -0500
> @@ -2846,7 +2846,8 @@ static void rebalance_tick(unsigned long
> struct sched_domain *sd;
> int i, scale;
>
> - idle = (current == this_rq->idle) ? SCHED_IDLE : NOT_IDLE;
> + idle = (current == this_rq->idle && !this_rq->nr_running) ?
> + SCHED_IDLE : NOT_IDLE;
A comment of why we are checking for nr_running would be nice.
And one more thing. We can reduce some of the tasklet invoking complexity
by actually checking for a load_balance() need at any domain and thus
invoking tasklet which will do the load balance, rather than unconditionally
invoking tasklet for each tick.
thanks,
suresh
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists