Hi folks, this is v2 of: https://lore.kernel.org/lkml/20210721115118.729943-1-valentin.schneider@xxxxxxx/ respun from Frederic and Paul's helpful feedback. Tested atop v5.14-rc4-rt6 with the v1 patches reverted. There, commit d76e0926d835 ("rcu/nocb: Use the rcuog CPU's ->nocb_timer") prevents the NOCB offload warning from firing if there are no NOCB CPUs (which is sensible). Adding a single NOCB CPU brings the warning back, which patch 3 fixes. Note that patches 2 & 4 are already in v5.14-rc4-rt6, but still apply against mainline. Revisions ========= v1 -> v2 ++++++++ o Rebased and tested against v5.14-rc4-rt6 o Picked rcutorture patch from https://lore.kernel.org/lkml/20210803225437.3612591-2-valentin.schneider@xxxxxxx/ o Added a local_lock to protect NOCB offload state under PREEMPT_RT (Frederic, Paul) Valentin Schneider (4): rcutorture: Don't disable softirqs with preemption disabled when PREEMPT_RT sched: Introduce is_pcpu_safe() rcu/nocb: Protect NOCB state via local_lock() under PREEMPT_RT arm64: mm: Make arch_faults_on_old_pte() check for migratability arch/arm64/include/asm/pgtable.h | 2 +- include/linux/sched.h | 10 ++++ kernel/rcu/rcutorture.c | 2 + kernel/rcu/tree.c | 4 ++ kernel/rcu/tree.h | 4 ++ kernel/rcu/tree_plugin.h | 82 ++++++++++++++++++++++++++++---- 6 files changed, 94 insertions(+), 10 deletions(-) -- 2.25.1