syzbot


INFO: rcu detected stall in br_handle_frame

Status: upstream: reported on 2025/11/21 04:49
Reported-by: syzbot+a0b26fcabafa4609b88c@syzkaller.appspotmail.com
First crash: 19d, last: 6d10h
Similar bugs (14)
Kernel Title Rank 🛈 Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream INFO: rcu detected stall in br_handle_frame (5) bridge 1 syz 24 396d 424d 28/29 fixed on 2024/11/12 23:31
linux-4.14 INFO: rcu detected stall in br_handle_frame (3) 1 1 1897d 1897d 0/1 auto-closed as invalid on 2021/01/28 07:46
upstream INFO: rcu detected stall in br_handle_frame 1 C done 341 2277d 2283d 13/29 fixed on 2019/10/09 10:54
upstream INFO: rcu detected stall in br_handle_frame (2) net 1 C done 2 2182d 2178d 15/29 fixed on 2020/02/18 14:31
upstream INFO: rcu detected stall in br_handle_frame (3) bridge 1 1 1607d 1607d 0/29 auto-closed as invalid on 2021/10/15 13:41
linux-4.14 INFO: rcu detected stall in br_handle_frame (2) 1 C done 1 2182d 2182d 1/1 fixed on 2020/01/19 15:05
linux-4.14 INFO: rcu detected stall in br_handle_frame 1 C done 15 2275d 2286d 1/1 fixed on 2019/12/07 19:24
linux-4.19 INFO: rcu detected stall in br_handle_frame (2) 1 C error 31 1042d 1883d 0/1 upstream: reported C repro on 2020/10/14 18:56
linux-4.19 INFO: rcu detected stall in br_handle_frame 1 C done 41 2274d 2287d 1/1 fixed on 2019/12/07 19:18
linux-6.1 INFO: rcu detected stall in br_handle_frame (2) 1 2 2d04h 65d 0/3 upstream: reported on 2025/10/06 18:18
linux-5.15 INFO: rcu detected stall in br_handle_frame origin:lts-only 1 C inconclusive 3 20d 671d 0/3 upstream: reported C repro on 2024/02/08 13:52
linux-6.1 INFO: rcu detected stall in br_handle_frame 1 2 470d 553d 0/3 auto-obsoleted due to no activity on 2024/12/04 21:21
upstream INFO: rcu detected stall in br_handle_frame (4) kernel 1 1 1446d 1446d 0/29 closed as invalid on 2022/02/08 10:10
android-5-15 BUG: soft lockup in br_handle_frame 1 2 479d 485d 0/2 auto-obsoleted due to no activity on 2024/11/16 05:31

Sample crash report:
rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
rcu: 	(detected by 1, t=10502 jiffies, g=29357, q=477 ncpus=2)
rcu: All QSes seen, last rcu_preempt kthread activity 10503 (4294978137-4294967634), jiffies_till_next_fqs=1, root ->qsmask 0x0
rcu: rcu_preempt kthread starved for 10504 jiffies! g29357 f0x2 RCU_GP_WAIT_FQS(5) ->state=0x0 ->cpu=0
rcu: 	Unless rcu_preempt kthread gets sufficient CPU time, OOM is now expected behavior.
rcu: RCU grace-period kthread stack dump:
task:rcu_preempt     state:R  running task     stack:27080 pid:17    ppid:2      flags:0x00004000
Call Trace:
 <TASK>
 context_switch kernel/sched/core.c:5380 [inline]
 __schedule+0x14d2/0x44d0 kernel/sched/core.c:6699
 schedule+0xbd/0x170 kernel/sched/core.c:6773
 schedule_timeout+0x160/0x280 kernel/time/timer.c:2168
 rcu_gp_fqs_loop+0x302/0x1560 kernel/rcu/tree.c:1667
 rcu_gp_kthread+0x99/0x380 kernel/rcu/tree.c:1866
 kthread+0x2fa/0x390 kernel/kthread.c:388
 ret_from_fork+0x48/0x80 arch/x86/kernel/process.c:152
 ret_from_fork_asm+0x11/0x20 arch/x86/entry/entry_64.S:293
 </TASK>
rcu: Stack dump where RCU GP kthread last ran:
Sending NMI from CPU 1 to CPUs 0:
NMI backtrace for cpu 0
CPU: 0 PID: 8599 Comm: syz.4.677 Not tainted syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/25/2025
RIP: 0010:__lock_acquire+0xdb2/0x7c80 kernel/locking/lockdep.c:5107
Code: 89 d8 48 c1 e8 06 48 8d 3c c5 00 95 da 90 be 08 00 00 00 e8 80 f4 75 00 49 b8 00 00 00 00 00 fc ff df 48 0f a3 1d fe 88 73 0f <0f> 83 16 50 00 00 49 8d 9d d0 0a 00 00 48 89 d8 48 c1 e8 03 48 89
RSP: 0018:ffffc900000056e0 EFLAGS: 00000057
RAX: 0000000000000001 RBX: 0000000000000001 RCX: ffffffff81670bf0
RDX: 0000000000000000 RSI: 0000000000000008 RDI: ffffffff90da9500
RBP: ffffc90000005928 R08: dffffc0000000000 R09: 1ffffffff21b52a0
R10: dffffc0000000000 R11: fffffbfff21b52a1 R12: 0000000000000002
R13: ffff888023160000 R14: ffff888023160c20 R15: ffff888023160c40
FS:  00007faf19dfb6c0(0000) GS:ffff8880b8e00000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f962fbb9a18 CR3: 000000002ec6f000 CR4: 00000000003506f0
DR0: 0000000000000000 DR1: 0000200000000300 DR2: 0000200000000300
DR3: 0000200000000300 DR6: 00000000ffff0ff0 DR7: 0000000000000600
Call Trace:
 <IRQ>
 lock_acquire+0x197/0x410 kernel/locking/lockdep.c:5754
 __raw_spin_lock_irqsave include/linux/spinlock_api_smp.h:110 [inline]
 _raw_spin_lock_irqsave+0xa8/0xf0 kernel/locking/spinlock.c:162
 debug_object_activate+0x6c/0x4b0 lib/debugobjects.c:709
 debug_hrtimer_activate kernel/time/hrtimer.c:450 [inline]
 debug_activate kernel/time/hrtimer.c:505 [inline]
 enqueue_hrtimer+0x30/0x370 kernel/time/hrtimer.c:1108
 __run_hrtimer kernel/time/hrtimer.c:1767 [inline]
 __hrtimer_run_queues+0x637/0xc40 kernel/time/hrtimer.c:1814
 hrtimer_interrupt+0x3c9/0x9c0 kernel/time/hrtimer.c:1876
 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1077 [inline]
 __sysvec_apic_timer_interrupt+0xfb/0x3b0 arch/x86/kernel/apic/apic.c:1094
 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1088 [inline]
 sysvec_apic_timer_interrupt+0x51/0xc0 arch/x86/kernel/apic/apic.c:1088
 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:687
RIP: 0010:on_stack arch/x86/include/asm/stacktrace.h:56 [inline]
RIP: 0010:stack_access_ok arch/x86/kernel/unwind_orc.c:393 [inline]
RIP: 0010:deref_stack_reg arch/x86/kernel/unwind_orc.c:403 [inline]
RIP: 0010:unwind_next_frame+0xed5/0x2970 arch/x86/kernel/unwind_orc.c:585
Code: 00 00 00 00 00 fc ff df 41 80 7c 05 00 00 74 08 4c 89 f7 e8 ad 4c a2 00 4c 89 74 24 58 48 8b 44 24 08 4c 8d 70 f8 48 8b 2c 24 <4c> 8b 7d 10 48 b8 00 00 00 00 00 fc ff df 48 8b 4c 24 18 0f b6 04
RSP: 0018:ffffc90000005f38 EFLAGS: 00000246
RAX: ffffc90000007158 RBX: ffffc90000000000 RCX: 0000000000000003
RDX: ffffffff813ab186 RSI: ffffffff8cb9e7b0 RDI: 0000000000000002
RBP: ffffc90000006008 R08: ffff888023160000 R09: 0000000000000003
R10: 0000000000000004 R11: 0000000000000100 R12: 1ffff92000000c02
R13: 1ffff92000000c03 R14: ffffc90000007150 R15: ffffffff8f56e370
 arch_stack_walk+0x144/0x190 arch/x86/kernel/stacktrace.c:25
 stack_trace_save+0x9c/0xe0 kernel/stacktrace.c:122
 kasan_save_stack mm/kasan/common.c:45 [inline]
 kasan_set_track+0x4e/0x70 mm/kasan/common.c:52
 kasan_save_free_info+0x2e/0x50 mm/kasan/generic.c:522
 ____kasan_slab_free+0x126/0x1e0 mm/kasan/common.c:236
 kasan_slab_free include/linux/kasan.h:164 [inline]
 slab_free_hook mm/slub.c:1811 [inline]
 slab_free_freelist_hook+0x130/0x1b0 mm/slub.c:1837
 slab_free mm/slub.c:3830 [inline]
 kmem_cache_free+0xf8/0x280 mm/slub.c:3852
 packet_rcv+0x16b/0x13d0 net/packet/af_packet.c:2278
 dev_queue_xmit_nit+0xb1a/0xbb0 net/core/dev.c:2372
 xmit_one net/core/dev.c:3615 [inline]
 dev_hard_start_xmit+0x148/0x740 net/core/dev.c:3635
 __dev_queue_xmit+0x1a64/0x35a0 net/core/dev.c:4425
 dev_queue_xmit include/linux/netdevice.h:3113 [inline]
 br_dev_queue_push_xmit+0x6a6/0x850 net/bridge/br_forward.c:53
 NF_HOOK+0x613/0x6a0 include/linux/netfilter.h:304
 br_nf_post_routing+0xb41/0xfb0 net/bridge/br_netfilter_hooks.c:977
 nf_hook_entry_hookfn include/linux/netfilter.h:144 [inline]
 nf_hook_slow+0xbd/0x200 net/netfilter/core.c:626
 nf_hook include/linux/netfilter.h:259 [inline]
 NF_HOOK+0x213/0x3d0 include/linux/netfilter.h:302
 br_forward_finish+0xd3/0x130 net/bridge/br_forward.c:66
 br_nf_hook_thresh net/bridge/br_netfilter_hooks.c:-1 [inline]
 br_nf_forward_finish+0xa33/0xe50 net/bridge/br_netfilter_hooks.c:684
 NF_HOOK+0x613/0x6a0 include/linux/netfilter.h:304
 br_nf_forward_ip+0xcc1/0x1110 net/bridge/br_netfilter_hooks.c:754
 nf_hook_entry_hookfn include/linux/netfilter.h:144 [inline]
 nf_hook_slow+0xbd/0x200 net/netfilter/core.c:626
 nf_hook include/linux/netfilter.h:259 [inline]
 NF_HOOK+0x213/0x3d0 include/linux/netfilter.h:302
 __br_forward+0x41f/0x600 net/bridge/br_forward.c:115
 deliver_clone net/bridge/br_forward.c:131 [inline]
 maybe_deliver+0xb5/0x150 net/bridge/br_forward.c:191
 br_flood+0x31b/0x680 net/bridge/br_forward.c:237
 br_handle_frame_finish+0x143d/0x1950 net/bridge/br_input.c:215
 br_nf_hook_thresh+0x3b6/0x480 net/bridge/br_netfilter_hooks.c:1184
 br_nf_pre_routing_finish_ipv6+0x9e3/0xd90 net/bridge/br_netfilter_ipv6.c:-1
 NF_HOOK include/linux/netfilter.h:304 [inline]
 br_nf_pre_routing_ipv6+0x34d/0x680 net/bridge/br_netfilter_ipv6.c:184
 nf_hook_entry_hookfn include/linux/netfilter.h:144 [inline]
 nf_hook_bridge_pre net/bridge/br_input.c:277 [inline]
 br_handle_frame+0x957/0x14c0 net/bridge/br_input.c:424
 __netif_receive_skb_core+0xf6b/0x3ac0 net/core/dev.c:5502
 __netif_receive_skb_one_core net/core/dev.c:5606 [inline]
 __netif_receive_skb+0x74/0x290 net/core/dev.c:5722
 process_backlog+0x380/0x6e0 net/core/dev.c:6050
 __napi_poll+0xc0/0x460 net/core/dev.c:6612
 napi_poll net/core/dev.c:6679 [inline]
 net_rx_action+0x5ea/0xbf0 net/core/dev.c:6815
 handle_softirqs+0x280/0x820 kernel/softirq.c:578
 __do_softirq kernel/softirq.c:612 [inline]
 invoke_softirq kernel/softirq.c:452 [inline]
 __irq_exit_rcu+0xc7/0x190 kernel/softirq.c:661
 irq_exit_rcu+0x9/0x20 kernel/softirq.c:673
 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1088 [inline]
 sysvec_apic_timer_interrupt+0xa4/0xc0 arch/x86/kernel/apic/apic.c:1088
 </IRQ>
 <TASK>
 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:687
RIP: 0010:page_ext_data include/linux/page_ext.h:87 [inline]
RIP: 0010:get_page_owner mm/page_owner.c:107 [inline]
RIP: 0010:__reset_page_owner+0xbc/0x190 mm/page_owner.c:152
Code: 8c 00 00 00 e8 a5 6e 9f ff 41 83 ee 01 0f 82 ba 00 00 00 e8 96 6e 9f ff 4c 89 ff be 08 00 00 00 e8 59 de f6 ff 49 0f ba 37 01 <4c> 8b 2d 5d 27 fe 0a 4b 8d 7c 2f 0c 48 89 f8 48 c1 e8 03 42 0f b6
RSP: 0018:ffffc9000394f600 EFLAGS: 00000257
RAX: ffffffff81e62201 RBX: 1ffffffff2de3530 RCX: ffffffff81e62237
RDX: 0000000000000001 RSI: 0000000000000008 RDI: ffff88801a22a4f0
RBP: 0000000000000003 R08: ffff88801a22a4f7 R09: 1ffff1100344549e
R10: dffffc0000000000 R11: ffffed100344549f R12: dffffc0000000000
R13: ffff88801a22a4c8 R14: 0000000000000001 R15: ffff88801a22a4f0
 reset_page_owner include/linux/page_owner.h:24 [inline]
 free_pages_prepare mm/page_alloc.c:1154 [inline]
 free_unref_page_prepare+0x7ce/0x8e0 mm/page_alloc.c:2336
 free_unref_page+0x32/0x2e0 mm/page_alloc.c:2429
 discard_slab mm/slub.c:2127 [inline]
 __unfreeze_partials+0x1cf/0x210 mm/slub.c:2667
 put_cpu_partial+0x17c/0x250 mm/slub.c:2743
 __slab_free+0x31d/0x410 mm/slub.c:3700
 qlink_free mm/kasan/quarantine.c:166 [inline]
 qlist_free_all+0x75/0xe0 mm/kasan/quarantine.c:185
 kasan_quarantine_reduce+0x143/0x160 mm/kasan/quarantine.c:292
 ____kasan_kmalloc mm/kasan/common.c:340 [inline]
 __kasan_kmalloc+0x22/0xa0 mm/kasan/common.c:383
 kmalloc_node include/linux/slab.h:616 [inline]
 kzalloc_node include/linux/slab.h:732 [inline]
 __get_vm_area_node+0x125/0x370 mm/vmalloc.c:2613
 __vmalloc_node_range+0x36e/0x1320 mm/vmalloc.c:3299
 __vmalloc_node mm/vmalloc.c:3404 [inline]
 __vmalloc+0x7a/0x90 mm/vmalloc.c:3418
 bpf_prog_alloc_no_stats+0x47/0x440 kernel/bpf/core.c:98
 bpf_prog_alloc+0x3d/0x1b0 kernel/bpf/core.c:136
 bpf_prog_load+0x6b8/0x16d0 kernel/bpf/syscall.c:2681
 __sys_bpf+0x55a/0x800 kernel/bpf/syscall.c:5473
 __do_sys_bpf kernel/bpf/syscall.c:5577 [inline]
 __se_sys_bpf kernel/bpf/syscall.c:5575 [inline]
 __x64_sys_bpf+0x7c/0x90 kernel/bpf/syscall.c:5575
 do_syscall_x64 arch/x86/entry/common.c:51 [inline]
 do_syscall_64+0x55/0xb0 arch/x86/entry/common.c:81
 entry_SYSCALL_64_after_hwframe+0x68/0xd2
RIP: 0033:0x7faf18f8f749
Code: ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 a8 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007faf19dfb038 EFLAGS: 00000246 ORIG_RAX: 0000000000000141
RAX: ffffffffffffffda RBX: 00007faf191e5fa0 RCX: 00007faf18f8f749
RDX: 0000000000000094 RSI: 0000200000000600 RDI: 0000000000000005
RBP: 00007faf19013f91 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 00007faf191e6038 R14: 00007faf191e5fa0 R15: 00007ffe86d4d628
 </TASK>
net_ratelimit: 153 callbacks suppressed
bridge0: received packet on veth0_to_bridge with own address as source address (addr:aa:aa:aa:aa:aa:0c, vlan:0)
bridge0: received packet on bridge_slave_0 with own address as source address (addr:aa:aa:aa:aa:aa:1b, vlan:0)
bridge0: received packet on bridge_slave_0 with own address as source address (addr:aa:aa:aa:aa:aa:0c, vlan:0)
bridge0: received packet on bridge_slave_0 with own address as source address (addr:aa:aa:aa:aa:aa:1b, vlan:0)
bridge0: received packet on veth0_to_bridge with own address as source address (addr:56:67:92:7f:f8:25, vlan:0)
bridge0: received packet on veth0_to_bridge with own address as source address (addr:aa:aa:aa:aa:aa:0c, vlan:0)
bridge0: received packet on veth0_to_bridge with own address as source address (addr:56:67:92:7f:f8:25, vlan:0)
bridge0: received packet on bridge_slave_0 with own address as source address (addr:aa:aa:aa:aa:aa:0c, vlan:0)
bridge0: received packet on bridge_slave_0 with own address as source address (addr:aa:aa:aa:aa:aa:1b, vlan:0)
bridge0: received packet on veth0_to_bridge with own address as source address (addr:aa:aa:aa:aa:aa:0c, vlan:0)
net_ratelimit: 5227 callbacks suppressed
bridge0: received packet on veth0_to_bridge with own address as source address (addr:56:67:92:7f:f8:25, vlan:0)
bridge0: received packet on bridge_slave_0 with own address as source address (addr:aa:aa:aa:aa:aa:0c, vlan:0)
bridge0: received packet on veth0_to_bridge with own address as source address (addr:56:67:92:7f:f8:25, vlan:0)
bridge0: received packet on bridge_slave_0 with own address as source address (addr:aa:aa:aa:aa:aa:1b, vlan:0)
bridge0: received packet on veth0_to_bridge with own address as source address (addr:aa:aa:aa:aa:aa:0c, vlan:0)
bridge0: received packet on bridge_slave_0 with own address as source address (addr:aa:aa:aa:aa:aa:1b, vlan:0)
bridge0: received packet on veth0_to_bridge with own address as source address (addr:56:67:92:7f:f8:25, vlan:0)
bridge0: received packet on bridge_slave_0 with own address as source address (addr:aa:aa:aa:aa:aa:0c, vlan:0)
bridge0: received packet on veth0_to_bridge with own address as source address (addr:56:67:92:7f:f8:25, vlan:0)
bridge0: received packet on bridge_slave_0 with own address as source address (addr:aa:aa:aa:aa:aa:1b, vlan:0)

Crashes (4):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2025/12/04 10:48 linux-6.6.y 4791134e4aeb d6526ea3 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf INFO: rcu detected stall in br_handle_frame
2025/12/01 00:32 linux-6.6.y 1e89a1be4fe9 d6526ea3 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf INFO: rcu detected stall in br_handle_frame
2025/11/26 09:45 linux-6.6.y 1e89a1be4fe9 64219f15 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf INFO: rcu detected stall in br_handle_frame
2025/11/21 04:48 linux-6.6.y 0a805b6ea8cd 2cc4c24a .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf INFO: rcu detected stall in br_handle_frame
* Struck through repros no longer work on HEAD.