=============================
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/8307:
#0: ffff8880221df9d8 (ptlock_ptr(page)#2){+.+.}-{2:2}, at: spin_lock include/linux/spinlock.h:363 [inline]
#0: ffff8880221df9d8 (ptlock_ptr(page)#2){+.+.}-{2:2}, at: zap_pte_range mm/memory.c:1342 [inline]
#0: ffff8880221df9d8 (ptlock_ptr(page)#2){+.+.}-{2:2}, at: zap_pmd_range mm/memory.c:1505 [inline]
#0: ffff8880221df9d8 (ptlock_ptr(page)#2){+.+.}-{2:2}, at: zap_pud_range mm/memory.c:1534 [inline]
#0: ffff8880221df9d8 (ptlock_ptr(page)#2){+.+.}-{2:2}, at: zap_p4d_range mm/memory.c:1555 [inline]
#0: ffff8880221df9d8 (ptlock_ptr(page)#2){+.+.}-{2:2}, at: unmap_page_range+0x98d/0x2520 mm/memory.c:1576
#1: ffffffff8c11bfa0 (rcu_read_lock){....}-{1:2}, at: rcu_lock_acquire+0x0/0x30
#2: ffffffff8c11bfa0 (rcu_read_lock){....}-{1:2}, at: rcu_lock_acquire+0x9/0x30 include/linux/rcupdate.h:312
#3: ffff8880204f1148 (dev->qdisc_running_key ?: &qdisc_running_key){+...}-{0:0}, at: net_tx_action+0x6bc/0x870 net/core/dev.c:5128
#4: ffff8880204f1108 (&sch->q.lock){+.-.}-{2:2}, at: spin_lock include/linux/spinlock.h:363 [inline]
#4: ffff8880204f1108 (&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: 1 PID: 8307 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:instrument_atomic_read include/linux/instrumented.h:71 [inline]
RIP: 0010:atomic_read include/linux/atomic/atomic-instrumented.h:27 [inline]
RIP: 0010:lock_page_memcg+0x20c/0x410 mm/memcontrol.c:2062
Code: ff 48 c7 44 24 40 00 00 00 00 9c 8f 44 24 40 f6 44 24 41 02 0f 85 f9 00 00 00 f7 c3 00 02 00 00 74 01 fb 4d 8d af 80 10 00 00 <4c> 89 ef be 04 00 00 00 e8 17 96 fb ff 4c 89 e8 48 c1 e8 03 48 b9
RSP: 0018:ffffc900031cf760 EFLAGS: 00000206
RAX: 1fc4bd8abb6fd300 RBX: 0000000000000286 RCX: 1fc4bd8abb6fd300
RDX: dffffc0000000000 RSI: ffffffff8a0b11c0 RDI: ffffffff8a59a740
RBP: ffffc900031cf838 R08: dffffc0000000000 R09: fffffbfff1ff3619
R10: fffffbfff1ff3619 R11: 1ffffffff1ff3618 R12: ffff888016a7c670
R13: ffff888016a7d080 R14: ffffea0000279138 R15: ffff888016a7c000
page_remove_rmap+0x2a/0x10f0 mm/rmap.c:1351
zap_pte_range mm/memory.c:1384 [inline]
zap_pmd_range mm/memory.c:1505 [inline]
zap_pud_range mm/memory.c:1534 [inline]
zap_p4d_range mm/memory.c:1555 [inline]
unmap_page_range+0xfbc/0x2520 mm/memory.c:1576
unmap_vmas+0x11b/0x230 mm/memory.c:1653
exit_mmap+0x38f/0x5f0 mm/mmap.c:3204
__mmput+0x115/0x3b0 kernel/fork.c:1127
exit_mm+0x567/0x6c0 kernel/exit.c:550
do_exit+0x599/0x20a0 kernel/exit.c:861
do_group_exit+0x12e/0x300 kernel/exit.c:996
__do_sys_exit_group kernel/exit.c:1007 [inline]
__se_sys_exit_group kernel/exit.c:1005 [inline]
__x64_sys_exit_group+0x3b/0x40 kernel/exit.c:1005
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:0x7f60b43bd6c5
Code: Unable to access opcode bytes at RIP 0x7f60b43bd69b.
RSP: 002b:00007ffc79bd9168 EFLAGS: 00000202 ORIG_RAX: 00000000000000e7
RAX: ffffffffffffffda RBX: 00007ffc79bd9404 RCX: 00007f60b43bd6c5
RDX: 00000000000000e7 RSI: ffffffffffffff88 RDI: 0000000000000000
RBP: 0000000000000003 R08: 00007ffc79bd9260 R09: 0000000000000002
R10: 0000000000000000 R11: 0000000000000202 R12: 0000000000000000
R13: 00007ffc79bd94a0 R14: 00007f60b45c5000 R15: 0000556d8c08ed98
vcan0: j1939_tp_rxtimer: 0xffff88805f85f800: abort rx timeout. Force session deactivation
----------------
Code disassembly (best guess):
0: ff 48 c7 decl -0x39(%rax)
3: 44 24 40 rex.R and $0x40,%al
6: 00 00 add %al,(%rax)
8: 00 00 add %al,(%rax)
a: 9c pushf
b: 8f 44 24 40 pop 0x40(%rsp)
f: f6 44 24 41 02 testb $0x2,0x41(%rsp)
14: 0f 85 f9 00 00 00 jne 0x113
1a: f7 c3 00 02 00 00 test $0x200,%ebx
20: 74 01 je 0x23
22: fb sti
23: 4d 8d af 80 10 00 00 lea 0x1080(%r15),%r13
* 2a: 4c 89 ef mov %r13,%rdi <-- trapping instruction
2d: be 04 00 00 00 mov $0x4,%esi
32: e8 17 96 fb ff call 0xfffb964e
37: 4c 89 e8 mov %r13,%rax
3a: 48 c1 e8 03 shr $0x3,%rax
3e: 48 rex.W
3f: b9 .byte 0xb9