Re: [PATCH 4/5] Create rebalance_domains from rebalance_tick

Christoph Lameter
2006-10-26T16:19:47Z

On Thu, 26 Oct 2006, Nick Piggin wrote:

> > While we are at it: Take the opportunity to avoid taking
> > the request queue lock in wake_priority_sleeper if
> > there are no running processes.
>
> Can you split this out? It is good without the tasklet based
> rebalancing.

Sure next rollup will have this:

Avoid taking the rq lock in wake_priority sleeper

Avoid taking the request queue lock in wake_priority_sleeper if
there are no running processes.

Signed-off-by: Christoph Lameter <clameter@sgi.com>

Index: linux-2.6.19-rc3/kernel/sched.c
===================================================================
--- linux-2.6.19-rc3.orig/kernel/sched.c 2006-10-26 11:13:29.000000000 -0500
+++ linux-2.6.19-rc3/kernel/sched.c 2006-10-26 11:16:44.896476659 -0500
@@ -2900,6 +2900,9 @@ static inline int wake_priority_sleeper(
int ret = 0;

#ifdef CONFIG_SCHED_SMT
+ if (!rq->nr_running)
+ return 0;
+
spin_lock(&rq->lock);
/*
* If an SMT sibling task has been put to sleep for priority