Messages in this thread | | | Date | Sun, 22 Apr 2018 19:31:50 -0700 | From | "Paul E. McKenney" <> | Subject | [PATCH tip/core/rcu 0/22] Miscellaneous fixes for v4.18 |
| |
Hello!
This series provides miscellaneous fixes:
1. Make non-production PREEMPT cond_resched() help Tasks RCU.
2. Inline rcu_preempt_do_callback() into its sole caller, courtesy of Byungchul Park.
3. Don't allocate rcu_nocb_mask if no one needs it, for example, in the case where there are no no-CBs CPUs.
4. Call wake_nocb_leader_defer() with 'FORCE' when nocb_q_count is high, courtesy of Byungchul Park.
5. Remove deprecated RCU debugfs tracing code, courtesy of Byungchul Park.
6. Rename cond_resched_rcu_qs() to cond_resched_tasks_rcu_qs() in order to reflect its actual current use case.
7. Eliminate unused cond_resched_softirq() macro.
8. Move __rcu_read_lock() and __rcu_read_unlock() to tree_plugin.h.
9. Update rcu_bind_gp_kthread() header comment.
10. Declare rcu_eqs_special_set() in public header, courtesy of Yury Norov.
11. Add cleanup_srcu_struct_quiesced().
12. Avoid flush dependency in delete controller flow, which is included in this series due to its need for the shiny new cleanup_srcu_struct_quiesced() function.
13. Exclude near-simultaneous RCU CPU stall warnings.
14. Add leaf-node macros to simplify code.
15. Ensure whatisRCU.txt actually says what RCU is, courtesy of Paul Gortmaker.
16-21: Debugging commits that may or may not be submitted for inclusion, depending on how helpful they prove to be.
22: Use the proper lockdep annotation in dump_blkd_tasks(), courtesy of Boqun Feng.
Thanx, Paul
------------------------------------------------------------------------
Documentation/RCU/whatisRCU.txt | 2 drivers/nvme/host/core.c | 2 include/linux/rcupdate.h | 4 - include/linux/rcutree.h | 1 include/linux/sched.h | 14 ++-- include/linux/srcu.h | 36 ++++++++++++ kernel/rcu/rcu.h | 11 ++- kernel/rcu/rcuperf.c | 2 kernel/rcu/rcutorture.c | 7 ++ kernel/rcu/srcutiny.c | 9 ++- kernel/rcu/srcutree.c | 30 +++++----- kernel/rcu/tree.c | 76 ++++++++++++++------------ kernel/rcu/tree.h | 8 -- kernel/rcu/tree_exp.h | 13 +--- kernel/rcu/tree_plugin.h | 116 +++++++++++++++++++++++++++++++--------- kernel/rcu/update.c | 50 ----------------- kernel/sched/core.c | 14 ---- kernel/softirq.c | 3 - kernel/torture.c | 2 kernel/trace/trace_benchmark.c | 4 - 20 files changed, 232 insertions(+), 172 deletions(-)
| |