Skip to content

Preview of fourth set of RCU changes for 3.3

Paul E. McKenney lkml 1 version In review

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest7 patches 21 repliesIn review

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/7rcu: Don't check irq nesting from rcu idle entry/exitkernel/rcutree.c+8 -100 replies
2/7rcu: Irq nesting is always 0 on rcu_enter_idle_commonkernel/rcutree.c+2 -30 replies
3/7rcu: Keep invoking callbacks if CPU otherwise idlekernel/rcutree.c kernel/rcutree.h kernel/rcutree_plugin.h+19 -10 replies
4/7rcu: Adaptive dyntick-idle preparationkernel/rcutree_plugin.h+43 -110 replies
5/7rcu: remove redundant rcu_cpu_stall_suppress declarationkernel/rcutree.c+0 -20 replies
6/7driver-core/cpu: Add cpu_is_hotpluggable() for rcutorture error analysisdrivers/base/cpu.c include/linux/cpu.h kernel/rcutorture.c+14 -32 replies
7/7rcu: Quiet RCU-lockdep warnings involving interrupt disablingkernel/rcutree_plugin.h+6 -222 replies

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.

Read the v1 thread

Cover letter [PATCH tip/core/rcu 0/7] Preview of fourth set of RCU changes for 3.3

Hello!

This patchset adds to the earlier sets:

	https://lkml.org/lkml/2011/11/2/363
	https://lkml.org/lkml/2011/11/15/302
	https://lkml.org/lkml/2011/11/28/588

This fourth set adds more infrastructure for Frederic's user-mode nohz work, additional improvements to RCU_FAST_NO_HZ, and a few bug fixes. The patches are as follows:

1,2. More support for user-mode nohz (courtesy of Frederic Weisbecker).
3. Ignore RCU callback batch limits if the CPU is otherwise idle.
This allows a CPU to more quickly clear a backlog of callbacks, and thus more quickly enter dyntick-idle mode.
4. Adaptive dyntick-entry approach that more efficiently handles
the various possible grace-period begin/end scenarios.
5. Remove a redundant variable declaration.
6. Allow rcutorture to avoid attempting to offline unhotpluggable CPUs.
7. Fix RCU-lockdep splats involving RCU read-side critical sections
that partially overlap irq-disable code sections (courtesy of Yong Zhang).

For a testing-only version of this patchset from git, please see the following subject-to-rebase branch, based on 3.2-rc3:

git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu.git rcu/dev

Thanx, Paul

------------------------------------------------------------------------

 b/drivers/base/cpu.c      |   12 ++++++++
 b/include/linux/cpu.h     |    1 
 b/kernel/rcutorture.c     |    4 +-
 b/kernel/rcutree.c        |   18 +++++--------
 b/kernel/rcutree.h        |    1 
 b/kernel/rcutree_plugin.h |   14 ++++++++++
 kernel/rcutree.c          |   12 ++++----
 kernel/rcutree_plugin.h   |   62 ++++++++++++++++++++++++++++++++++++----------
 8 files changed, 92 insertions(+), 32 deletions(-)