[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20130813000355.GD27436@somewhere>
Date: Tue, 13 Aug 2013 02:03:57 +0200
From: Frederic Weisbecker <fweisbec@...il.com>
To: Ingo Molnar <mingo@...nel.org>
Cc: LKML <linux-kernel@...r.kernel.org>,
Steven Rostedt <rostedt@...dmis.org>,
"Paul E. McKenney" <paulmck@...ux.vnet.ibm.com>,
Thomas Gleixner <tglx@...utronix.de>,
Peter Zijlstra <peterz@...radead.org>,
Borislav Petkov <bp@...en8.de>,
Li Zhong <zhong@...ux.vnet.ibm.com>,
Mike Galbraith <efault@....de>,
Kevin Hilman <khilman@...aro.org>,
Martin Schwidefsky <schwidefsky@...ibm.com>,
Heiko Carstens <heiko.carstens@...ibm.com>,
Geert Uytterhoeven <geert@...ux-m68k.org>,
Alex Shi <alex.shi@...el.com>, Paul Turner <pjt@...gle.com>,
Vincent Guittot <vincent.guittot@...aro.org>
Subject: Re: [GIT PULL] timers/nohz updates for 3.12
On Mon, Aug 12, 2013 at 08:44:28PM +0200, Ingo Molnar wrote:
>
> * Frederic Weisbecker <fweisbec@...il.com> wrote:
>
> > Ingo,
> >
> > Please pull the timers/nohz branch that can be found at:
> >
> > git://git.kernel.org/pub/scm/linux/kernel/git/frederic/linux-dynticks.git
> > timers/nohz
> >
> > It mostly contains fixes and full dynticks off-case optimizations. I believe that
> > distros want to enable this feature so it seems important to optimize the case
> > where the "nohz_full=" parameter is empty. ie: I'm trying to remove any performance
> > regression that comes with NO_HZ_FULL=y when the feature is not used.
> >
> > This patchset improves the current situation a lot (off-case appears to be around 11% faster
> > with hackbench, although I guess it may vary depending on the configuration but it should be
> > significantly faster in any case) now there is still some work to do: I can still observe a
> > remaining loss of 1.6% throughput seen with hackbench compared to CONFIG_NO_HZ_FULL=n
> >
> > Thanks,
> > Frederic
> > ---
> >
> > Frederic Weisbecker (23):
> > sched: Consolidate open coded preemptible() checks
> > context_tracing: Fix guest accounting with native vtime
> > vtime: Update a few comments
> > context_tracking: Fix runtime CPU off-case
> > nohz: Only enable context tracking on full dynticks CPUs
> > context_tracking: Remove full dynticks' hacky dependency on wide context tracking
> > context_tracking: Ground setup for static key use
> > context_tracking: Optimize main APIs off case with static key
> > context_tracking: Optimize guest APIs off case with static key
> > context_tracking: Optimize context switch off case with static keys
> > context_tracking: User/kernel broundary cross trace events
> > vtime: Remove a few unneeded generic vtime state checks
> > vtime: Fix racy cputime delta update
> > context_tracking: Split low level state headers
> > hardirq: Split preempt count mask definitions
> > m68k: hardirq_count() only need preempt_mask.h
> > vtime: Describe overriden functions in dedicated arch headers
> > vtime: Optimize full dynticks accounting off case with static keys
> > vtime: Always scale generic vtime accounting results
> > vtime: Always debug check snapshot source _before_ updating it
> > nohz: Rename a few state variables
> > nohz: Optimize full dynticks state checks with static keys
> > nohz: Optimize full dynticks's sched hooks with static keys
> >
> >
> > arch/ia64/include/asm/Kbuild | 1 +
> > arch/m68k/include/asm/irqflags.h | 2 +-
> > arch/powerpc/include/asm/Kbuild | 1 +
> > arch/s390/include/asm/cputime.h | 3 -
> > arch/s390/include/asm/vtime.h | 7 ++
> > arch/s390/kernel/vtime.c | 1 +
> > include/linux/context_tracking.h | 120 +++++++++++++++--------------
> > include/linux/context_tracking_state.h | 39 +++++++++
> > include/linux/hardirq.h | 117 +----------------------------
> > include/linux/preempt_mask.h | 122 +++++++++++++++++++++++++++++
> > include/linux/tick.h | 45 +++++++++--
> > include/linux/vtime.h | 74 ++++++++++++++++--
> > include/trace/events/context_tracking.h | 58 ++++++++++++++
> > init/Kconfig | 28 +++++--
> > kernel/context_tracking.c | 128 ++++++++++++++++++-------------
> > kernel/sched/core.c | 4 +-
> > kernel/sched/cputime.c | 53 ++++---------
> > kernel/time/Kconfig | 1 -
> > kernel/time/tick-sched.c | 56 ++++++--------
> > 19 files changed, 534 insertions(+), 326 deletions(-)
>
> When merged to -tip it causes this build error:
>
> kernel/time/tick-sched.c:186:3: error: 'have_nohz_full_mask' undeclared (first use in this function)
> kernel/time/tick-sched.c:345:2: error: 'cpu' undeclared (first use in this function)
>
> config attached.
>
> I did what looked like to be an obvious conflict resolution to
> tick-sched.c (attached), please double check that too.
>
> While at it, mind rebasing your changes to tip:timers/urgent, which has a
> few nohz fixes pending as well?
Ok I did the rebase on top of tip:timers/urgent and handled the conflicts along.
The new branch is "timers/nohz-v2".
Tell me if anything goes wrong with it.
Thanks.
--
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