syzbot


INFO: rcu detected stall in preempt_schedule_thunk

Status: upstream: reported on 2025/09/12 20:33
Reported-by: syzbot+99f7095084850a188d16@syzkaller.appspotmail.com
First crash: 39d, last: 39d
Similar bugs (3)
Kernel Title Rank 🛈 Repro Cause bisect Fix bisect Count Last Reported Patched Status
linux-6.1 INFO: rcu detected stall in preempt_schedule_thunk 1 1 522d 522d 0/3 auto-obsoleted due to no activity on 2024/08/25 23:34
upstream INFO: rcu detected stall in preempt_schedule_thunk kernel 1 4 444d 485d 0/29 auto-obsoleted due to no activity on 2024/11/01 23:14
upstream INFO: rcu detected stall in preempt_schedule_thunk (2) kernel 1 2 308d 353d 0/29 auto-obsoleted due to no activity on 2025/03/18 05:25

Sample crash report:
bridge0: received packet on team0 with own address as source address (addr:aa:aa:aa:aa:aa:20, vlan:0)
bridge0: received packet on team0 with own address as source address (addr:aa:aa:aa:aa:aa:20, vlan:0)
rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
rcu: 	Tasks blocked on level-0 rcu_node (CPUs 0-1): P5788/1:b..l
rcu: 	(detected by 0, t=10502 jiffies, g=32185, q=280 ncpus=2)
task:syz-executor    state:R  running task     stack:21736 pid:5788  ppid:5780   flags:0x00004000
Call Trace:
 <TASK>
 context_switch kernel/sched/core.c:5380 [inline]
 __schedule+0x14d2/0x44d0 kernel/sched/core.c:6699
 preempt_schedule_common+0x82/0xc0 kernel/sched/core.c:6866
 preempt_schedule+0xab/0xc0 kernel/sched/core.c:6890
 preempt_schedule_thunk+0x1a/0x30 arch/x86/entry/thunk_64.S:45
 __raw_spin_unlock include/linux/spinlock_api_smp.h:143 [inline]
 _raw_spin_unlock+0x3a/0x40 kernel/locking/spinlock.c:186
 spin_unlock include/linux/spinlock.h:391 [inline]
 copy_pte_range mm/memory.c:1106 [inline]
 copy_pmd_range mm/memory.c:1167 [inline]
 copy_pud_range mm/memory.c:1204 [inline]
 copy_p4d_range mm/memory.c:1228 [inline]
 copy_page_range+0x2b7c/0x3600 mm/memory.c:1322
 dup_mmap kernel/fork.c:764 [inline]
 dup_mm kernel/fork.c:1692 [inline]
 copy_mm+0x112a/0x1c20 kernel/fork.c:1741
 copy_process+0x16d3/0x3d70 kernel/fork.c:2506
 kernel_clone+0x21b/0x840 kernel/fork.c:2914
 __do_sys_clone kernel/fork.c:3057 [inline]
 __se_sys_clone kernel/fork.c:3041 [inline]
 __x64_sys_clone+0x18c/0x1e0 kernel/fork.c:3041
 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:0x7fc177985413
RSP: 002b:00007ffc8206ebc8 EFLAGS: 00000246 ORIG_RAX: 0000000000000038
RAX: ffffffffffffffda RBX: 0000000000000000 RCX: 00007fc177985413
RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000001200011
RBP: 0000000000000001 R08: 0000000000000000 R09: 0000000000000001
R10: 000055557d94f7d0 R11: 0000000000000246 R12: 0000000000000000
R13: 00000000000927c0 R14: 000000000004fe26 R15: 00007ffc8206ed60
 </TASK>
rcu: rcu_preempt kthread starved for 4888 jiffies! g32185 f0x0 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:26568 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:2167
 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:
CPU: 0 PID: 8770 Comm: syz.2.951 Not tainted syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/12/2025
RIP: 0010:unwind_next_frame+0x1d1f/0x2970 arch/x86/kernel/unwind_orc.c:672
Code: 00 eb 05 e8 83 d0 4a 00 bf 01 00 00 00 e8 e9 ab 20 00 65 8b 1d 3a fa c8 7e 31 ff 89 de e8 19 d4 4a 00 85 db 0f 84 e6 02 00 00 <e8> 5c d0 4a 00 b0 01 e9 28 05 00 00 e8 50 d0 4a 00 48 8b 5c 24 58
RSP: 0018:ffffc900000073b8 EFLAGS: 00000202
RAX: ffffffff813abfd7 RBX: 0000000000000101 RCX: 0000000000000100
RDX: ffff88802aeada00 RSI: 0000000000000101 RDI: 0000000000000000
RBP: ffffc9000b8b7bd0 R08: ffff88802aeada00 R09: 0000000000000003
R10: 0000000000000004 R11: 0000000000000100 R12: ffffc90000007488
R13: dffffc0000000000 R14: ffffc9000b8b7be0 R15: ffffc90000007498
FS:  00007fbc116036c0(0000) GS:ffff8880b8e00000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f20b9073f98 CR3: 0000000023ef3000 CR4: 00000000003506f0
DR0: 0000200000000300 DR1: 0000000000000000 DR2: 0000200000000300
DR3: 0000200000000300 DR6: 00000000ffff0ff0 DR7: 0000000000000600
Call Trace:
 <IRQ>
 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
 kfree_skb include/linux/skbuff.h:1232 [inline]
 ip6_mc_input+0xa7e/0xc70 net/ipv6/ip6_input.c:589
 NF_HOOK+0x303/0x390 include/linux/netfilter.h:304
 __netif_receive_skb_one_core net/core/dev.c:5608 [inline]
 __netif_receive_skb+0xcc/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:debug_lockdep_rcu_enabled+0xd/0x30 kernel/rcu/update.c:319
Code: 48 c7 c6 60 df aa 8a e8 91 ec e1 f6 0f 0b eb d1 cc cc cc cc cc cc cc cc cc cc cc cc cc f3 0f 1e fa 31 c0 83 3d 7f 76 dc 03 00 <74> 1d 83 3d f6 a9 dc 03 00 74 14 65 48 8b 0d 50 9a 95 75 31 c0 83
RSP: 0018:ffffc9000b8b78b8 EFLAGS: 00000202
RAX: 0000000000000000 RBX: ffffc9000b8b0000 RCX: 0000000000000000
RDX: 0000000000000000 RSI: 0000000000000000 RDI: ffffc9000b8b7a40
RBP: ffffc9000b8b7ab0 R08: ffffc9000b8b7a3f R09: 0000000000000000
R10: ffffc9000b8b7a30 R11: fffff52001716f48 R12: 0000000000000001
R13: ffff8880b8e00000 R14: dffffc0000000000 R15: 1ffff92001716f34
 schedule_debug kernel/sched/core.c:5957 [inline]
 __schedule+0x1c6/0x44d0 kernel/sched/core.c:6590
 preempt_schedule_common+0x82/0xc0 kernel/sched/core.c:6866
 preempt_schedule+0xab/0xc0 kernel/sched/core.c:6890
 preempt_schedule_thunk+0x1a/0x30 arch/x86/entry/thunk_64.S:45
 __raw_spin_unlock_irq include/linux/spinlock_api_smp.h:160 [inline]
 _raw_spin_unlock_irq+0x40/0x50 kernel/locking/spinlock.c:202
 task_work_run+0x191/0x250 kernel/task_work.c:235
 get_signal+0x1235/0x1400 kernel/signal.c:2678
 arch_do_signal_or_restart+0x96/0x780 arch/x86/kernel/signal.c:310
 exit_to_user_mode_loop+0x70/0x110 kernel/entry/common.c:174
 exit_to_user_mode_prepare+0xf6/0x180 kernel/entry/common.c:210
 __syscall_exit_to_user_mode_work kernel/entry/common.c:291 [inline]
 syscall_exit_to_user_mode+0x1a/0x50 kernel/entry/common.c:302
 do_syscall_64+0x61/0xb0 arch/x86/entry/common.c:87
 entry_SYSCALL_64_after_hwframe+0x68/0xd2
RIP: 0033:0x7fbc1078eba9
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:00007fbc116030e8 EFLAGS: 00000246 ORIG_RAX: 00000000000000ca
RAX: fffffffffffffe00 RBX: 00007fbc109d6098 RCX: 00007fbc1078eba9
RDX: 0000000000000000 RSI: 0000000000000080 RDI: 00007fbc109d6098
RBP: 00007fbc109d6090 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 00007fbc109d6128 R14: 00007ffd4269a230 R15: 00007ffd4269a318
 </TASK>
net_ratelimit: 1003 callbacks suppressed
bridge0: received packet on team0 with own address as source address (addr:aa:aa:aa:aa:aa:20, vlan:0)
bridge0: received packet on team0 with own address as source address (addr:aa:aa:aa:aa:aa:20, vlan:0)
bridge0: received packet on team0 with own address as source address (addr:aa:aa:aa:aa:aa:20, vlan:0)
bridge0: received packet on team0 with own address as source address (addr:aa:aa:aa:aa:aa:20, vlan:0)
bridge0: received packet on team0 with own address as source address (addr:aa:aa:aa:aa:aa:20, vlan:0)
net_ratelimit: 5843 callbacks suppressed
bridge0: received packet on team0 with own address as source address (addr:aa:aa:aa:aa:aa:20, vlan:0)
bridge0: received packet on team0 with own address as source address (addr:aa:aa:aa:aa:aa:20, vlan:0)
bridge0: received packet on team0 with own address as source address (addr:aa:aa:aa:aa:aa:20, vlan:0)
bridge0: received packet on team0 with own address as source address (addr:aa:aa:aa:aa:aa:20, vlan:0)
bridge0: received packet on team0 with own address as source address (addr:aa:aa:aa:aa:aa:20, vlan:0)

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2025/09/12 20:33 linux-6.6.y 60a9e718726f e2beed91 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf INFO: rcu detected stall in preempt_schedule_thunk
* Struck through repros no longer work on HEAD.