============================= WARNING: suspicious RCU usage 6.9.0-rc7-syzkaller-02060-g5c1672705a1a #0 Not tainted ----------------------------- net/netfilter/nfnetlink_queue.c:263 suspicious rcu_dereference_check() usage! other info that might help us debug this: rcu_scheduler_active = 2, debug_locks = 1 2 locks held by syz-executor.4/13427: #0: ffffffff8e334f60 (rcu_callback){....}-{0:0}, at: rcu_lock_acquire include/linux/rcupdate.h:329 [inline] #0: ffffffff8e334f60 (rcu_callback){....}-{0:0}, at: rcu_do_batch kernel/rcu/tree.c:2190 [inline] #0: ffffffff8e334f60 (rcu_callback){....}-{0:0}, at: rcu_core+0xa86/0x1830 kernel/rcu/tree.c:2471 #1: ffff88801ca92958 (&inst->lock){+.-.}-{2:2}, at: spin_lock_bh include/linux/spinlock.h:356 [inline] #1: ffff88801ca92958 (&inst->lock){+.-.}-{2:2}, at: nfqnl_flush net/netfilter/nfnetlink_queue.c:405 [inline] #1: ffff88801ca92958 (&inst->lock){+.-.}-{2:2}, at: instance_destroy_rcu+0x30/0x220 net/netfilter/nfnetlink_queue.c:172 stack backtrace: CPU: 0 PID: 13427 Comm: syz-executor.4 Not tainted 6.9.0-rc7-syzkaller-02060-g5c1672705a1a #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 04/02/2024 Call Trace: __dump_stack lib/dump_stack.c:88 [inline] dump_stack_lvl+0x241/0x360 lib/dump_stack.c:114 lockdep_rcu_suspicious+0x221/0x340 kernel/locking/lockdep.c:6712 nf_reinject net/netfilter/nfnetlink_queue.c:323 [inline] nfqnl_reinject+0x6ec/0x1120 net/netfilter/nfnetlink_queue.c:397 nfqnl_flush net/netfilter/nfnetlink_queue.c:410 [inline] instance_destroy_rcu+0x1ae/0x220 net/netfilter/nfnetlink_queue.c:172 rcu_do_batch kernel/rcu/tree.c:2196 [inline] rcu_core+0xafd/0x1830 kernel/rcu/tree.c:2471 handle_softirqs+0x2d6/0x990 kernel/softirq.c:554 __do_softirq kernel/softirq.c:588 [inline] invoke_softirq kernel/softirq.c:428 [inline] __irq_exit_rcu+0xf4/0x1c0 kernel/softirq.c:637 irq_exit_rcu+0x9/0x30 kernel/softirq.c:649 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1043 [inline] sysvec_apic_timer_interrupt+0xa6/0xc0 arch/x86/kernel/apic/apic.c:1043 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:702 RIP: 0010:__raw_write_unlock_irq include/linux/rwlock_api_smp.h:274 [inline] RIP: 0010:_raw_write_unlock_irq+0x29/0x50 kernel/locking/spinlock.c:358 Code: 90 f3 0f 1e fa 53 48 89 fb 48 83 c7 18 48 8b 74 24 08 e8 6a cb e4 f5 48 89 df e8 c2 1d e6 f5 e8 ed 65 0f f6 fb bf 01 00 00 00 72 d0 d7 f5 65 8b 05 53 da 75 74 85 c0 74 06 5b c3 cc cc cc cc RSP: 0018:ffffc9000a4ef790 EFLAGS: 00000286 RAX: 6de62db44b5e4c00 RBX: ffffffff8e00a040 RCX: ffffffff94740603 RDX: dffffc0000000000 RSI: ffffffff8bcab900 RDI: 0000000000000001 RBP: ffffc9000a4ef910 R08: ffffffff8fa9532f R09: 1ffffffff1f52a65 R10: dffffc0000000000 R11: fffffbfff1f52a66 R12: ffff8880297c4390 R13: dffffc0000000000 R14: ffff88807a92da00 R15: ffff88807a92da00 release_task+0x165f/0x1810 kernel/exit.c:280 wait_task_zombie kernel/exit.c:1189 [inline] wait_consider_task+0x1a14/0x2e50 kernel/exit.c:1416 do_wait_thread kernel/exit.c:1479 [inline] __do_wait+0x1b0/0x850 kernel/exit.c:1597 do_wait+0x1e9/0x560 kernel/exit.c:1631 kernel_wait4+0x2a7/0x3e0 kernel/exit.c:1790 __do_sys_wait4 kernel/exit.c:1818 [inline] __se_sys_wait4 kernel/exit.c:1814 [inline] __x64_sys_wait4+0x134/0x1e0 kernel/exit.c:1814 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xf5/0x240 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f RIP: 0033:0x7fcc6a67a797 Code: 89 7c 24 10 48 89 4c 24 18 e8 d5 a3 02 00 4c 8b 54 24 18 8b 54 24 14 41 89 c0 48 8b 74 24 08 8b 7c 24 10 b8 3d 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 31 44 89 c7 89 44 24 10 e8 25 a4 02 00 8b 44 RSP: 002b:00007ffc1a09cc80 EFLAGS: 00000293 ORIG_RAX: 000000000000003d RAX: ffffffffffffffda RBX: 0000000000000156 RCX: 00007fcc6a67a797 RDX: 0000000040000001 RSI: 00007ffc1a09cd0c RDI: 00000000ffffffff RBP: 00007ffc1a09cd0c R08: 0000000000000000 R09: 00007fcc6b2eb0b0 R10: 0000000000000000 R11: 0000000000000293 R12: 0000000000000032 R13: 0000000000059f74 R14: 0000000000059f0a R15: 000000000000000e ---------------- Code disassembly (best guess): 0: 90 nop 1: f3 0f 1e fa endbr64 5: 53 push %rbx 6: 48 89 fb mov %rdi,%rbx 9: 48 83 c7 18 add $0x18,%rdi d: 48 8b 74 24 08 mov 0x8(%rsp),%rsi 12: e8 6a cb e4 f5 call 0xf5e4cb81 17: 48 89 df mov %rbx,%rdi 1a: e8 c2 1d e6 f5 call 0xf5e61de1 1f: e8 ed 65 0f f6 call 0xf60f6611 24: fb sti 25: bf 01 00 00 00 mov $0x1,%edi * 2a: e8 72 d0 d7 f5 call 0xf5d7d0a1 <-- trapping instruction 2f: 65 8b 05 53 da 75 74 mov %gs:0x7475da53(%rip),%eax # 0x7475da89 36: 85 c0 test %eax,%eax 38: 74 06 je 0x40 3a: 5b pop %rbx 3b: c3 ret 3c: cc int3 3d: cc int3 3e: cc int3 3f: cc int3