[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20101221210831.GS1750@nowhere>
Date: Tue, 21 Dec 2010 22:08:33 +0100
From: Frederic Weisbecker <fweisbec@...il.com>
To: Avi Kivity <avi@...hat.com>
Cc: Peter Zijlstra <a.p.zijlstra@...llo.nl>,
LKML <linux-kernel@...r.kernel.org>,
Thomas Gleixner <tglx@...utronix.de>,
"Paul E. McKenney" <paulmck@...ux.vnet.ibm.com>,
Ingo Molnar <mingo@...e.hu>,
Steven Rostedt <rostedt@...dmis.org>,
Lai Jiangshan <laijs@...fujitsu.com>,
Andrew Morton <akpm@...ux-foundation.org>,
Anton Blanchard <anton@....ibm.com>,
Tim Pepper <lnxninja@...ux.vnet.ibm.com>
Subject: Re: [RFC PATCH 15/15] nohz_task: Procfs interface
On Tue, Dec 21, 2010 at 08:17:33PM +0200, Avi Kivity wrote:
> On 12/21/2010 07:05 PM, Frederic Weisbecker wrote:
> >>
> >> For an example of a per-cpu flag that is checked on every exit with
> >> zero additional overhead on the flag clear case, look at
> >> TIF_USER_RETURN_NOTIFY.
> >
> >Right, but the problem is actually that if we want to automate the nohz
> >attribute on every tasks, then you need you have this flag set for
> >all of these threads.
> >
> >No problem with that, but if nobody wants the nohz attribute, we don't
> >need to force that slow path.
>
> When the scheduler detects the task is all alone, it sets the flag;
> when it blocks, or if another task joins, it drops the flag (at most
> one task per cpu has the flag set).
>
> Does that work?
Makes sense. And that integrates well with Peter's idea of creating a
new cpuset attribute for the nohz tasks.
But instead of making this detection from the scheduler, I think this
should be done from the tick: if there is only one task running, set
it the TF flag.
But anyway, that's an optimisation. We can start with setting that flag
on every task in that cpuset.
--
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