============================= WARNING: suspicious RCU usage 5.15.185-syzkaller #0 Not tainted ----------------------------- net/sched/sch_api.c:304 suspicious rcu_dereference_protected() usage! other info that might help us debug this: rcu_scheduler_active = 2, debug_locks = 1 6 locks held by dhcpcd-run-hook/5266: #0: ffff88802bd80bc0 (&sig->cred_guard_mutex){+.+.}-{3:3}, at: prepare_bprm_creds fs/exec.c:1479 [inline] #0: ffff88802bd80bc0 (&sig->cred_guard_mutex){+.+.}-{3:3}, at: bprm_execve+0xc4/0x17d0 fs/exec.c:1820 #1: ffffffff8c6ad6f8 (tomoyo_ss){....}-{0:0}, at: rcu_lock_acquire+0x5/0x30 include/linux/rcupdate.h:311 #2: ffffffff8c11bfa0 (rcu_read_lock){....}-{1:2}, at: rcu_lock_acquire+0x9/0x30 include/linux/rcupdate.h:312 #3: ffff888022312148 (dev->qdisc_running_key ?: &qdisc_running_key){+...}-{0:0}, at: net_tx_action+0x6bc/0x870 net/core/dev.c:5128 #4: ffff888022312108 (&sch->q.lock){+.-.}-{2:2}, at: spin_lock include/linux/spinlock.h:363 [inline] #4: ffff888022312108 (&sch->q.lock){+.-.}-{2:2}, at: sch_direct_xmit+0x305/0x4a0 net/sched/sch_generic.c:354 #5: ffffffff8c11bfa0 (rcu_read_lock){....}-{1:2}, at: rcu_lock_acquire+0x5/0x30 include/linux/rcupdate.h:311 stack backtrace: CPU: 0 PID: 5266 Comm: dhcpcd-run-hook Not tainted 5.15.185-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 05/07/2025 Call Trace: dump_stack_lvl+0x168/0x230 lib/dump_stack.c:106 qdisc_lookup+0xa6/0x650 net/sched/sch_api.c:304 qdisc_tree_reduce_backlog+0x213/0x4e0 net/sched/sch_api.c:800 cake_dequeue+0x1b8f/0x4aa0 net/sched/sch_cake.c:2189 qdisc_peek_dequeued+0x6e/0x1f0 include/net/sch_generic.h:1115 tbf_dequeue+0x7d/0xce0 net/sched/sch_tbf.c:265 dequeue_skb net/sched/sch_generic.c:292 [inline] qdisc_restart net/sched/sch_generic.c:397 [inline] __qdisc_run+0x237/0x1480 net/sched/sch_generic.c:415 qdisc_run+0x103/0x2f0 include/net/pkt_sched.h:132 net_tx_action+0x6bc/0x870 net/core/dev.c:5128 handle_softirqs+0x328/0x820 kernel/softirq.c:576 __do_softirq kernel/softirq.c:610 [inline] invoke_softirq kernel/softirq.c:450 [inline] __irq_exit_rcu+0x12f/0x220 kernel/softirq.c:659 irq_exit_rcu+0x5/0x20 kernel/softirq.c:671 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1108 [inline] sysvec_apic_timer_interrupt+0xa0/0xc0 arch/x86/kernel/apic/apic.c:1108 asm_sysvec_apic_timer_interrupt+0x16/0x20 arch/x86/include/asm/idtentry.h:676 RIP: 0010:filter_irq_stacks+0x2e/0x90 kernel/stacktrace.c:398 Code: 41 55 41 54 53 85 f6 74 70 49 89 fe 41 89 f4 31 db 49 bd 00 00 00 00 00 fc ff df 49 89 ff 4c 89 f8 48 c1 e8 03 42 80 3c 28 00 <74> 08 4c 89 ff e8 28 ca 56 00 49 8b 04 de 48 3d e0 01 c0 89 0f 93 RSP: 0018:ffffc9000381f920 EFLAGS: 00000246 RAX: 1ffff92000703f30 RBX: 0000000000000006 RCX: 41b2a75904376001 RDX: 0000000000000001 RSI: 0000000000000009 RDI: ffffc9000381f950 RBP: ffffc9000381fb70 R08: dffffc0000000000 R09: fffffbfff1ad157e R10: fffffbfff1ad157e R11: 1ffffffff1ad157d R12: 0000000000000009 R13: dffffc0000000000 R14: ffffc9000381f950 R15: ffffc9000381f980 kasan_save_stack mm/kasan/common.c:39 [inline] kasan_set_track mm/kasan/common.c:46 [inline] set_alloc_info mm/kasan/common.c:434 [inline] ____kasan_kmalloc mm/kasan/common.c:513 [inline] __kasan_kmalloc+0xbf/0xf0 mm/kasan/common.c:522 kmalloc include/linux/slab.h:604 [inline] kzalloc include/linux/slab.h:735 [inline] tomoyo_environ security/tomoyo/domain.c:633 [inline] tomoyo_find_next_domain+0x10ac/0x1a60 security/tomoyo/domain.c:882 tomoyo_bprm_check_security+0xdd/0x120 security/tomoyo/tomoyo.c:101 security_bprm_check+0x5e/0x90 security/security.c:868 search_binary_handler fs/exec.c:1730 [inline] exec_binprm fs/exec.c:1783 [inline] bprm_execve+0x9f7/0x17d0 fs/exec.c:1852 do_execveat_common+0x51e/0x6d0 fs/exec.c:1957 do_execve fs/exec.c:2027 [inline] __do_sys_execve fs/exec.c:2103 [inline] __se_sys_execve fs/exec.c:2098 [inline] __x64_sys_execve+0x8e/0xa0 fs/exec.c:2098 do_syscall_x64 arch/x86/entry/common.c:50 [inline] do_syscall_64+0x4c/0xa0 arch/x86/entry/common.c:80 entry_SYSCALL_64_after_hwframe+0x66/0xd0 RIP: 0033:0x7fc25f4ad107 Code: 0f 00 64 c7 00 07 00 00 00 b8 ff ff ff ff c9 c3 0f 1f 00 48 8b 05 a9 ee 0f 00 48 8b 10 e9 01 00 00 00 90 b8 3b 00 00 00 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d c1 ec 0f 00 f7 d8 64 89 01 48 RSP: 002b:00007ffcd8df14f8 EFLAGS: 00000246 ORIG_RAX: 000000000000003b RAX: ffffffffffffffda RBX: 0000559654cf1fe0 RCX: 00007fc25f4ad107 RDX: 0000559654cf2000 RSI: 0000559654cf1fe0 RDI: 0000559654cf2088 RBP: 0000559654cf2088 R08: 00007ffcd8df4e41 R09: 0000000000000000 R10: 0000000000000008 R11: 0000000000000246 R12: 0000559654cf2000 R13: 00007fc25f672e8b R14: 0000559654cf2000 R15: 0000000000000000 ---------------- Code disassembly (best guess): 0: 41 55 push %r13 2: 41 54 push %r12 4: 53 push %rbx 5: 85 f6 test %esi,%esi 7: 74 70 je 0x79 9: 49 89 fe mov %rdi,%r14 c: 41 89 f4 mov %esi,%r12d f: 31 db xor %ebx,%ebx 11: 49 bd 00 00 00 00 00 movabs $0xdffffc0000000000,%r13 18: fc ff df 1b: 49 89 ff mov %rdi,%r15 1e: 4c 89 f8 mov %r15,%rax 21: 48 c1 e8 03 shr $0x3,%rax 25: 42 80 3c 28 00 cmpb $0x0,(%rax,%r13,1) * 2a: 74 08 je 0x34 <-- trapping instruction 2c: 4c 89 ff mov %r15,%rdi 2f: e8 28 ca 56 00 call 0x56ca5c 34: 49 8b 04 de mov (%r14,%rbx,8),%rax 38: 48 3d e0 01 c0 89 cmp $0xffffffff89c001e0,%rax 3e: 0f .byte 0xf 3f: 93 xchg %eax,%ebx