Last LPC's debates seem to have raised general agreement that nohz_full cpusets interface should operate on offline CPUs to simplify the picture. And since the only known future user of NOCB (de-)offloading is going to be nohz_full cpusets, its transitions need to operate on offline CPUs as well. The good news is that it simplifies a bit the (de-)offloading code, as the diffstat testifies. Thanks. Frederic Weisbecker (11): rcu/nocb: Introduce RCU_NOCB_LOCKDEP_WARN() rcu/nocb: Move nocb field at the end of state struct rcu/nocb: Assert no callbacks while nocb kthread allocation fails rcu/nocb: Introduce nocb mutex rcu/nocb: (De-)offload callbacks on offline CPUs only rcu/nocb: Remove halfway (de-)offloading handling from bypass rcu/nocb: Remove halfway (de-)offloading handling from rcu_core()'s QS reporting rcu/nocb: Remove halfway (de-)offloading handling from rcu_core rcu/nocb: Remove SEGCBLIST_RCU_CORE rcu/nocb: Remove SEGCBLIST_KTHREAD_CB rcu/nocb: Simplify (de-)offloading state machine include/linux/rcu_segcblist.h | 6 +- include/linux/rcupdate.h | 7 + kernel/rcu/rcu_segcblist.c | 11 -- kernel/rcu/rcu_segcblist.h | 11 +- kernel/rcu/tree.c | 45 +----- kernel/rcu/tree.h | 6 +- kernel/rcu/tree_nocb.h | 266 +++++++++++++--------------------- kernel/rcu/tree_plugin.h | 5 +- 8 files changed, 122 insertions(+), 235 deletions(-) -- 2.45.1