[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1214243649.4440.10.camel@Aeon>
Date: Mon, 23 Jun 2008 17:54:09 +0000
From: Darren Hart <dvhltc@...ibm.com>
To: Arjan van de Ven <arjan@...radead.org>
Cc: paulmck@...ux.vnet.ibm.com, linux-kernel@...r.kernel.org,
mingo@...e.hu, josh@...edesktop.org, niv@...ibm.com,
dino@...ibm.com, akpm@...ux-foundation.org,
torvalds@...ux-foundation.org, vegard.nossum@...il.com,
adobriyan@...il.com, oleg@...sign.ru, bunk@...nel.org, rjw@...k.pl
Subject: Re: [PATCH -tip-rcu] Make rcutorture more vicious: make quiescent
rcutorture less power-hungry
On Sun, 2008-06-22 at 13:17 -0700, Arjan van de Ven wrote:
> On Sun, 22 Jun 2008 13:06:38 -0700
> "Paul E. McKenney" <paulmck@...ux.vnet.ibm.com> wrote:
>
> > This patch makes the non-module rcutorture a bit more friendly to
> > the power-conservation code. This is a rather simple-minded approach.
> > More sophisticated approaches would get rid of the rcutorture tasks
> > while rcutorture execution was suppressed, but attempts thus far to
> > do this have not gone well -- calling rcu_torture_init() from a /proc
> > callout results in oopses.
> >
> > Signed-off-by: Paul E. McKenney <paulmck@...ux.vnet.ibm.com>
> > ---
> >
> > rcutorture.c | 5 ++++-
> > 1 file changed, 4 insertions(+), 1 deletion(-)
> >
> > diff -urpNa -X dontdiff
> > linux-2.6.26-rc4-rcut2-proc/kernel/rcutorture.c
> > linux-2.6.26-rc4-rcut3-procq/kernel/rcutorture.c ---
> > linux-2.6.26-rc4-rcut2-proc/kernel/rcutorture.c 2008-06-22
> > 10:29:04.000000000 -0700 +++
> > linux-2.6.26-rc4-rcut3-procq/kernel/rcutorture.c 2008-06-22
> > 12:20:10.000000000 -0700 @@ -196,7 +196,10 @@ static void
> > rcu_stutter_wait(void) { while (stutter_pause_test
> > || !rcutorture_runnable)
> > - schedule_timeout_interruptible(1);
> > + if (rcutorture_runnable)
> > + schedule_timeout_interruptible(1);
> > + else
> > + schedule_timeout_interruptible(HZ);
> > }
>
> could you also make it use round_jiffies_relative() to make the power
> impact even less.....
> (by coalescing various "once a second" timers like this)
I'm a little concerned about how this will affect real-time performance,
as queueing up lots of timers all at once can lead to long running timer
expiration handlers. If just a schedule_timeout, I suppose we are only
looking at a process wakeup, as opposed to a softirq context callback
function?
Thanks,
--
Darren Hart
Real-Time Linux Team Lead
IBM Linux Technology Center
--
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