On Fri, Dec 04, 2020 at 06:01:57PM +0100, Thomas Gleixner wrote: > From: Thomas Gleixner <t...@linutronix.de> > > Soft interrupt disabled sections can legitimately be preempted or schedule > out when blocking on a lock on RT enabled kernels so the RCU preempt check > warning has to be disabled for RT kernels. > > Signed-off-by: Thomas Gleixner <t...@linutronix.de>
Reviewed-by: Paul E. McKenney <paul...@kernel.org> > --- > include/linux/rcupdate.h | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > --- a/include/linux/rcupdate.h > +++ b/include/linux/rcupdate.h > @@ -319,7 +319,8 @@ static inline void rcu_preempt_sleep_che > #define rcu_sleep_check() \ > do { \ > rcu_preempt_sleep_check(); \ > - RCU_LOCKDEP_WARN(lock_is_held(&rcu_bh_lock_map), \ > + if (!IS_ENABLED(CONFIG_PREEMPT_RT)) \ > + RCU_LOCKDEP_WARN(lock_is_held(&rcu_bh_lock_map), \ > "Illegal context switch in RCU-bh read-side > critical section"); \ > RCU_LOCKDEP_WARN(lock_is_held(&rcu_sched_lock_map), \ > "Illegal context switch in RCU-sched read-side > critical section"); \ >