Messages in this thread | | | Date | Wed, 2 Oct 2019 18:38:34 -0700 | From | "Paul E. McKenney" <> | Subject | [PATCH tip/core/rcu 0/12] NO_HZ fixes for v5.5 |
| |
Hello!
This series contains various fixes for NO_HZ and NO_HZ_FULL problems, including re-enabling the tick during long-term kernel-mode execution.
1. Add TICK_DEP_BIT_RCU (which allows RCU-specific tick re-enabling), courtesy of Frederic Weisbecker.
2. Export tick start/stop functions for rcutorture.
3. Force on tick when invoking lots of callbacks.
4. Force on tick for rcutorture readers and callback flooders.
5. Provide RCU quiescent state in multi_cpu_stop().
6. Make CPU-hotplug removal operations enable tick.
7. Use {READ,WRITE)_ONCE() for multi_cpu_stop() ->state.
8. Force tick on for nohz_full CPUs not reaching quiescent states.
9. Force nohz_full tick on upon irq enter instead of exit.
10. Reset CPU hints when reporting a quiescent state, courtesy of Joel Fernandes.
11. Confine ->core_needs_qs accesses to the corresponding CPU.
12. Make kernel-mode nohz_full CPUs invoke the RCU core processing.
Thanx, Paul
------------------------------------------------------------------------
include/linux/rcutree.h | 1 include/linux/tick.h | 7 ++ include/trace/events/timer.h | 3 - kernel/rcu/rcutorture.c | 20 +++++--- kernel/rcu/tree.c | 105 ++++++++++++++++++++++++++++++------------- kernel/rcu/tree.h | 1 kernel/stop_machine.c | 7 +- kernel/time/tick-sched.c | 11 ++++ 8 files changed, 114 insertions(+), 41 deletions(-)
| |