============================= WARNING: suspicious RCU usage 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 4 locks held by ksoftirqd/1/20: #0: ffffffff8d11efa0 (rcu_read_lock){....}-{1:2}, at: rcu_lock_acquire+0x9/0x30 include/linux/rcupdate.h:313 #1: ffff888077666948 (dev->qdisc_running_key ?: &qdisc_running_key){+...}-{0:0}, at: net_tx_action+0x6d9/0x880 net/core/dev.c:5155 #2: ffff888077666908 (&sch->q.lock){+.-.}-{2:2}, at: spin_lock include/linux/spinlock.h:364 [inline] #2: ffff888077666908 (&sch->q.lock){+.-.}-{2:2}, at: sch_direct_xmit+0x301/0x4a0 net/sched/sch_generic.c:357 #3: ffffffff8d11efa0 (rcu_read_lock){....}-{1:2}, at: rcu_lock_acquire+0x5/0x30 include/linux/rcupdate.h:312 stack backtrace: CPU: 1 PID: 20 Comm: ksoftirqd/1 Not tainted syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/07/2026 Call Trace: dump_stack_lvl+0x188/0x250 lib/dump_stack.c:106 qdisc_lookup+0xa6/0x640 net/sched/sch_api.c:304 qdisc_tree_reduce_backlog+0x188/0x480 net/sched/sch_api.c:800 codel_dequeue_drop net/sched/sch_codel.c:108 [inline] codel_peek+0x1dd/0x330 net/sched/sch_codel.c:140 tbf_dequeue+0x7b/0xcf0 net/sched/sch_tbf.c:265 dequeue_skb net/sched/sch_generic.c:295 [inline] qdisc_restart net/sched/sch_generic.c:400 [inline] __qdisc_run+0x22f/0x14b0 net/sched/sch_generic.c:418 qdisc_run+0x103/0x2f0 include/net/pkt_sched.h:132 net_tx_action+0x6d9/0x880 net/core/dev.c:5155 handle_softirqs+0x336/0x830 kernel/softirq.c:576 run_ksoftirqd+0xa4/0x100 kernel/softirq.c:943 smpboot_thread_fn+0x520/0x990 kernel/smpboot.c:164 kthread+0x42e/0x520 kernel/kthread.c:334 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:287 net_ratelimit: 51 callbacks suppressed