Re: [PATCH tip/core/rcu 0/20] Miscellaneous fixes for 4.11

Paul E. McKenney
2017-01-18T02:53:26Z

On Sat, Jan 14, 2017 at 01:12:55AM -0800, Paul E. McKenney wrote:
Hello!

This series provides miscellaneous fixes:

1. Make RCU_EXPEDITE_BOOT be the default in order to speed up
boot, courtesy of Sebastian Andrzej Siewior.

2. Make RCU suspicious-access lockdep splats use pr_err().

3. Disable sys_membarrier when nohz_full is enabled, courtesy
of Mathieu Desnoyers.

4. Only dump stalled-tasks stacks if there was a real stall, courtesy
of Byungchul Park.

5. Remove unneeded rcu_process_callbacks() declarations.

6. Remove unused but set "mask" variable, courtesy of Tobias Klauser.

7. Add long-term CPU kicking.

8. Remove short-term CPU kicking.

9. Once again use NMI-based stack traces in stall warnings.

10. Re-enable TASKS_RCU for User Mode Linux.

11. Don't wake rcuc/X kthreads on NOCB CPUs.

12. Add comment headers to expedited-grace-period counter functions.

13. Make rcu_cpu_starting() use its "cpu" argument.

14. Enable RCU tracepoints by default to aid in debugging, courtesy
of Matt Fleming.

15. Fix comment in rcu_organize_nocb_kthreads(), which no longer
spawns kthreads.

16. Clarify comments about when llist locking is needed, courtesy
of Joel Fernandes.

17. Eliminate unused expedited_normal counter.

18. Add lockdep checks to synchronous expedited primitives.

Changes since v1:

o Reverse the order of patches 7 and 8.

o Defer the patch adding tests for trivial grace periods.

o Defer the patch making cond_resched() provide RCU quiescent
states.

o Apply other feedback from Josh Triplett, Peter Zijlstra, and
Michal Hocko.

Thanx, Paul

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

Documentation/RCU/trace.txt | 5 +----
include/linux/llist.h | 37 +++++++++++++++++++++----------------
init/Kconfig | 14 --------------
kernel/locking/lockdep.c | 12 ++++++------
kernel/membarrier.c | 4 ++++
kernel/rcu/tiny.c | 2 --
kernel/rcu/tree.c | 35 ++++++++++++++++++-----------------
kernel/rcu/tree.h | 1 -
kernel/rcu/tree_exp.h | 28 +++++++++++++++++++++++++++-
kernel/rcu/tree_plugin.h | 5 +++--
kernel/rcu/tree_trace.c | 3 +--
kernel/rcu/update.c | 6 ++----
lib/Kconfig.debug | 1 +
13 files changed, 84 insertions(+), 69 deletions(-)