[PATCH tip/core/rcu 0/15] Miscellaneous fixes for 4.2

From: Paul E. McKenney
Date: Tue May 12 2015 - 17:48:11 EST


Hello!

This series contains miscellaneous fixes.

1. Move RCU from the old ACCESS_ONCE() API to READ_ONCE() and
WRITE_ONCE().

2. Change uses of rcu_preempt_state to *rcu_state_p, which allows
easier elimination of a few #ifdefs.

3. Eliminate a few CONFIG_RCU_BOOST #ifdefs.

4. Use the "const" tag to tell the compiler that rcu_state_p is
immutable.

5. Create an immutable rcu_data_p to the default rcu_data per-CPU
structures.

6. Eliminate a few CONFIG_RCU_NOCB_CPU_ALL #ifdefs.

7. Force wakeup of rcu_gp_kthread at grace-period end in order to
cause end-of-grace-period processing to happen in a timely fashion,
thus reducing grace-period latencies.

8. Use true/false for bool-function return values, courtesy of
Joe Perches.

9. Fix PowerPC's smp_mb__before_spinlock().

10. Prevent RCU CPU stall warnings from ignoring tasks blocking the
current grace period, courtesy of Patrick Daly.

11. Add more debugging information when an RCU CPU stall warning is
caused by stalling of the grace-period kthread.

12. Make control dependencies work on DEC Alpha and fix documentation.

13. Avoid deadlocks by having synchronize_sched_expedited() invoke
wait_rcu_gp() instead of synchronize_sched().

14. Make the rcu_*_data variables static.

15. Change rcu_cpu_has_callbacks()'s return type to bool, courtesy
of Nicholas Mc Guire.

Thanx, Paul

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

b/Documentation/memory-barriers.txt | 55 +++++----
b/arch/powerpc/include/asm/barrier.h | 1
b/include/linux/compiler.h | 16 ++
b/include/linux/rculist.h | 6 -
b/include/linux/rcupdate.h | 20 +--
b/include/linux/rcutree.h | 2
b/kernel/events/ring_buffer.c | 2
b/kernel/rcu/rcutorture.c | 2
b/kernel/rcu/srcu.c | 10 -
b/kernel/rcu/tiny_plugin.h | 12 +-
b/kernel/rcu/tree.c | 199 +++++++++++++++++------------------
b/kernel/rcu/tree.h | 5
b/kernel/rcu/tree_plugin.h | 197 +++++++++++++++++-----------------
b/kernel/rcu/tree_trace.c | 6 -
b/kernel/rcu/update.c | 30 ++---
b/kernel/torture.c | 26 ++--
16 files changed, 311 insertions(+), 278 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/