public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [GIT PULL] nohz: Adaptively stop the tick, finally
@ 2013-04-22 18:59 Frederic Weisbecker
  2013-04-22 18:59 ` [PATCH 01/10] posix_timers: Fix pre-condition to stop the tick on full dynticks Frederic Weisbecker
                   ` (10 more replies)
  0 siblings, 11 replies; 15+ messages in thread
From: Frederic Weisbecker @ 2013-04-22 18:59 UTC (permalink / raw)
  To: Ingo Molnar
  Cc: LKML, Frederic Weisbecker, Chris Metcalf, Christoph Lameter,
	Geoff Levand, Gilad Ben Yossef, Hakan Akkan, Kevin Hilman,
	Li Zhong, Oleg Nesterov, Paul E. McKenney, Paul Gortmaker,
	Peter Zijlstra, Steven Rostedt, Thomas Gleixner, Stephane Eranian,
	Jiri Olsa

Ingo,

Please pull the latest full dynticks branch that can found at:

git://git.kernel.org/pub/scm/linux/kernel/git/frederic/linux-dynticks.git
	timers/nohz

HEAD: 67826eae8c16dbf00c262be6ec15021bb42f69c4

This handles perf and CPUs that get more than one task and fix posix cpu timers
handling.

This can finally stop the tick. It boots and doesn't crash, as far as I tested.

Now what's left:

* Kick CPUs' tick when the clock is marked unstable

* Kick CPUs when they extend the RCU grace periods too much by staying in
the kernel for too long (we are discussing this with Paul).

* sched_class:task_tick(). There are gazillions statistics maintained there.
It's probably mostly about local and global fairness. May be for other stuff
too (cgroups, etc...).

* update_cpu_load_active(): again, various stats maintained there

* load balancing (see trigger_load_balance() usually called from the tick).

I hope we can handle these things progressively in the long run.

Thanks.

---
Frederic Weisbecker (10):
  posix_timers: Fix pre-condition to stop the tick on full dynticks
  perf: Kick full dynticks CPU if events rotation is needed
  perf: New helper to prevent full dynticks CPUs from stopping tick
  sched: Kick full dynticks CPU that have more than one task enqueued.
  sched: New helper to prevent from stopping the tick in full dynticks
  nohz: Re-evaluate the tick from the scheduler IPI
  nohz: Implement full dynticks kick
  nohz: Prepare to stop the tick on irq exit
  nohz: Re-evaluate the tick for the new task after a context switch
  nohz: Disable the tick when irq resume in full dynticks CPU

 include/linux/perf_event.h |    6 +++
 include/linux/sched.h      |    6 +++
 include/linux/tick.h       |    4 ++
 kernel/events/core.c       |   17 +++++++-
 kernel/posix-cpu-timers.c  |    6 +-
 kernel/sched/core.c        |   24 +++++++++++-
 kernel/sched/sched.h       |   11 +++++
 kernel/softirq.c           |   19 ++++++--
 kernel/time/tick-sched.c   |   95 ++++++++++++++++++++++++++++++++++++++-----
 9 files changed, 167 insertions(+), 21 deletions(-)

-- 
1.7.5.4


^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2013-04-25  6:28 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-04-22 18:59 [GIT PULL] nohz: Adaptively stop the tick, finally Frederic Weisbecker
2013-04-22 18:59 ` [PATCH 01/10] posix_timers: Fix pre-condition to stop the tick on full dynticks Frederic Weisbecker
2013-04-22 18:59 ` [PATCH 02/10] perf: Kick full dynticks CPU if events rotation is needed Frederic Weisbecker
2013-04-22 18:59 ` [PATCH 03/10] perf: New helper to prevent full dynticks CPUs from stopping tick Frederic Weisbecker
2013-04-22 18:59 ` [PATCH 04/10] sched: Kick full dynticks CPU that have more than one task enqueued Frederic Weisbecker
2013-04-22 18:59 ` [PATCH 05/10] sched: New helper to prevent from stopping the tick in full dynticks Frederic Weisbecker
2013-04-22 18:59 ` [PATCH 06/10] nohz: Re-evaluate the tick from the scheduler IPI Frederic Weisbecker
2013-04-22 18:59 ` [PATCH 07/10] nohz: Implement full dynticks kick Frederic Weisbecker
2013-04-22 18:59 ` [PATCH 08/10] nohz: Prepare to stop the tick on irq exit Frederic Weisbecker
2013-04-22 18:59 ` [PATCH 09/10] nohz: Re-evaluate the tick for the new task after a context switch Frederic Weisbecker
2013-04-22 18:59 ` [PATCH 10/10] nohz: Disable the tick when irq resume in full dynticks CPU Frederic Weisbecker
2013-04-24  7:32 ` [GIT PULL] nohz: Adaptively stop the tick, finally Ingo Molnar
2013-04-24  7:38   ` Ingo Molnar
2013-04-24 14:50     ` Frederic Weisbecker
2013-04-25  6:28       ` Ingo Molnar

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox