[PATCH tip/core/rcu 0/10] Don not IPI offline CPUs, de-emphasize cond_resched_rcu_qs()

From: Paul E. McKenney
Date: Fri Dec 01 2017 - 14:21:38 EST


Hello!

This series provides some fixes to prevent sending IPIs to offline
CPUs and also replaces most uses of cond_resched_rcu_qs() with the new
and improved cond_resched(). There are still a few remaining uses of
cond_resched_rcu_qs() in rcutorture because the mechanisms that strengthen
cond_resched() rely on RCU making forward progress. This series contains:

1. Stop resched_cpu() from sending IPIs to offline CPUs.

2. Stop switched_to_rt() from sending IPIs to offline CPUs.

3. Move netfilter from cond_resched_rcu_qs() to cond_resched().

4. Move mm from cond_resched_rcu_qs() to cond_resched().

5. Move workqueue from cond_resched_rcu_qs() to cond_resched().

6. Move trace from cond_resched_rcu_qs() to cond_resched().

7. Move softirq from cond_resched_rcu_qs() to cond_resched().

8. Move fs from cond_resched_rcu_qs() to cond_resched().

9. Remove cond_resched_rcu_qs() from documentation.

10. Improve performance by accounting for rcu_all_qs() in cond_resched().

Thanx, Paul

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

Documentation/RCU/Design/Data-Structures/Data-Structures.html | 3 ++-
Documentation/RCU/Design/Requirements/Requirements.html | 4 ++--
Documentation/RCU/stallwarn.txt | 10 ++++------
fs/file.c | 2 +-
include/linux/rcupdate.h | 2 +-
kernel/sched/core.c | 3 ++-
kernel/sched/rt.c | 2 +-
kernel/softirq.c | 2 +-
kernel/trace/trace_benchmark.c | 2 +-
kernel/workqueue.c | 2 +-
mm/mlock.c | 2 +-
net/netfilter/nf_conntrack_core.c | 2 +-
12 files changed, 18 insertions(+), 18 deletions(-)