============================= WARNING: suspicious RCU usage 5.12.0-next-20210506-syzkaller #0 Not tainted ----------------------------- kernel/sched/core.c:4912 Illegal context switch in RCU-sched read-side critical section! other info that might help us debug this: rcu_scheduler_active = 2, debug_locks = 0 3 locks held by kworker/u4:18/11997: #0: ffff88802885e938 ( (wq_completion)bat_events ){+.+.}-{0:0} , at: arch_atomic64_set arch/x86/include/asm/atomic64_64.h:34 [inline] , at: atomic64_set include/asm-generic/atomic-instrumented.h:856 [inline] , at: atomic_long_set include/asm-generic/atomic-long.h:41 [inline] , at: set_work_data kernel/workqueue.c:616 [inline] , at: set_work_pool_and_clear_pending kernel/workqueue.c:643 [inline] , at: process_one_work+0x871/0x1600 kernel/workqueue.c:2246 #1: ffffc90003087da8 ( (work_completion)(&(&bat_priv->nc.work)->work) ){+.+.}-{0:0} , at: process_one_work+0x8a5/0x1600 kernel/workqueue.c:2250 #2: ffffffff8bf797a0 ( rcu_read_lock ){....}-{1:2} , at: batadv_nc_process_nc_paths.part.0+0xb1/0x3b0 net/batman-adv/network-coding.c:680 stack backtrace: CPU: 0 PID: 11997 Comm: kworker/u4:18 Not tainted 5.12.0-next-20210506-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Workqueue: bat_events batadv_nc_worker Call Trace: __dump_stack lib/dump_stack.c:79 [inline] dump_stack+0x141/0x1d7 lib/dump_stack.c:120 schedule_debug kernel/sched/core.c:4912 [inline] __schedule+0x1647/0x23e0 kernel/sched/core.c:5038 preempt_schedule_notrace+0x5b/0xd0 kernel/sched/core.c:5386 preempt_schedule_notrace_thunk+0x16/0x18 arch/x86/entry/thunk_64.S:36 rcu_read_unlock_sched_notrace include/linux/rcupdate.h:795 [inline] trace_lock_release include/trace/events/lock.h:58 [inline] lock_release+0x545/0x720 kernel/locking/lockdep.c:5523 rcu_lock_release include/linux/rcupdate.h:272 [inline] rcu_read_unlock include/linux/rcupdate.h:711 [inline] batadv_nc_process_nc_paths.part.0+0x267/0x3b0 net/batman-adv/network-coding.c:695 batadv_nc_process_nc_paths net/batman-adv/network-coding.c:675 [inline] batadv_nc_worker+0xb90/0xe50 net/batman-adv/network-coding.c:731 process_one_work+0x98d/0x1600 kernel/workqueue.c:2275 worker_thread+0x64c/0x1120 kernel/workqueue.c:2421 kthread+0x3b1/0x4a0 kernel/kthread.c:313 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:294