[PATCH tip/core/rcu 0/13] Preview of yet more RCU changes for 3.3

From: Paul E. McKenney
Date: Mon Nov 28 2011 - 18:32:24 EST


Hello!

This patchset adds to the pair that were previously posted
earlier this month (see https://lkml.org/lkml/2011/11/2/363
and https://lkml.org/lkml/2011/11/15/302). This third set adds
more rcutorture capabilities to ease automated testing under KVM
(randomized CPU hotplug operations), updates Frederic's user-mode nohz
RCU infrastructure, adds tracing for RCU_FAST_NO_HZ, makes a number of
improvements to RCU_FAST_NO_HZ suggested by the resulting traces, speeds
up TREE_RCU's dyntick-idle identification, and provides documentation
updates. The patches are as follows:

1. Add randomized CPU-hotplug capability to rcutorture.
2. Decouple turning off the scheduler tick and informing RCU
of CPU idleness (courtesy of Frederic Weisbecker).
3,4,12. Documentation updates, with the addition of load/store atomicity
guarantees (#3) being of the most widespread interest.
5. Add event tracing for RCU_FAST_NO_HZ.
6,7,8,9,10,11,13.
RCU_FAST_NO_HZ improvements suggested by event-tracing output.

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

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

Thanx, Paul

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

b/Documentation/RCU/torture.txt | 8 +
b/Documentation/atomic_ops.txt | 87 +++++++++++++
b/arch/arm/kernel/process.c | 6
b/arch/avr32/kernel/process.c | 6
b/arch/blackfin/kernel/process.c | 6
b/arch/microblaze/kernel/process.c | 6
b/arch/mips/kernel/process.c | 6
b/arch/openrisc/kernel/idle.c | 6
b/arch/powerpc/kernel/idle.c | 15 +-
b/arch/powerpc/platforms/iseries/setup.c | 12 +
b/arch/s390/kernel/process.c | 6
b/arch/sh/kernel/idle.c | 6
b/arch/sparc/kernel/process_64.c | 6
b/arch/tile/kernel/process.c | 6
b/arch/um/kernel/process.c | 6
b/arch/unicore32/kernel/process.c | 6
b/arch/x86/kernel/process_32.c | 6
b/include/linux/rcupdate.h | 15 ++
b/include/linux/srcu.h | 5
b/include/linux/tick.h | 47 -------
b/include/trace/events/rcu.h | 12 +
b/kernel/rcutorture.c | 117 ++++++++++++++++-
b/kernel/rcutree.c | 2
b/kernel/rcutree.h | 3
b/kernel/rcutree_plugin.h | 18 ++
b/kernel/time/tick-sched.c | 15 +-
include/trace/events/rcu.h | 41 +++++-
kernel/rcutree.c | 10 +
kernel/rcutree.h | 2
kernel/rcutree_plugin.h | 205 ++++++++++++++++---------------
30 files changed, 488 insertions(+), 204 deletions(-)

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/