syzbot


INFO: rcu detected stall in batadv_tt_purge

Status: upstream: reported on 2024/03/24 12:47
Reported-by: syzbot+c87c26f133881b2b1756@syzkaller.appspotmail.com
First crash: 63d, last: 18h25m
Similar bugs (3)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream INFO: rcu detected stall in batadv_tt_purge (2) batman C done inconclusive 3 467d 1035d 0/26 auto-obsoleted due to no activity on 2023/06/14 13:09
upstream INFO: rcu detected stall in batadv_tt_purge cgroups mm 1 1600d 1600d 0/26 closed as invalid on 2020/01/09 08:13
upstream INFO: rcu detected stall in batadv_tt_purge (3) batman 1 189d 173d 0/26 auto-obsoleted due to no activity on 2024/02/17 16:44

Sample crash report:
rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
rcu: 	0-...!: (1 GPs behind) idle=5094/1/0x4000000000000000 softirq=11018/11024 fqs=33
	(detected by 1, t=10504 jiffies, g=10293, q=1276 ncpus=2)
Sending NMI from CPU 1 to CPUs 0:
NMI backtrace for cpu 0
CPU: 0 PID: 3834 Comm: kworker/u4:12 Not tainted 6.1.92-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 04/02/2024
Workqueue: bat_events batadv_tt_purge
RIP: 0010:lockdep_enabled kernel/locking/lockdep.c:116 [inline]
RIP: 0010:lock_release+0xf6/0xa20 kernel/locking/lockdep.c:5675
Code: 01 09 0d 73 0d e8 0a bd 08 00 84 c0 0f 84 c5 05 00 00 48 c7 c0 24 be 73 8e 48 c1 e8 03 42 0f b6 04 38 84 c0 0f 85 cd 05 00 00 <83> 3d c7 35 09 0d 00 0f 84 2b 05 00 00 65 8b 05 56 f0 97 7e 85 c0
RSP: 0018:ffffc90000007b60 EFLAGS: 00000046
RAX: 0000000000000000 RBX: 0000000000000000 RCX: ffffffff816a8827
RDX: 0000000000000000 RSI: ffffffff8b3d45c0 RDI: ffffffff8b3d4580
RBP: ffffc90000007c90 R08: dffffc0000000000 R09: fffffbfff1ce712e
R10: 0000000000000000 R11: dffffc0000000001 R12: 1ffff92000000f78
R13: ffffffff8179eacd R14: ffffc90000007cc0 R15: dffffc0000000000
FS:  0000000000000000(0000) GS:ffff8880b9800000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000001b2e022000 CR3: 000000000ce8e000 CR4: 00000000003506f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 <NMI>
 </NMI>
 <IRQ>
 __raw_spin_unlock_irqrestore include/linux/spinlock_api_smp.h:149 [inline]
 _raw_spin_unlock_irqrestore+0x75/0x130 kernel/locking/spinlock.c:194
 debug_hrtimer_deactivate kernel/time/hrtimer.c:425 [inline]
 debug_deactivate+0x1d/0x280 kernel/time/hrtimer.c:481
 __run_hrtimer kernel/time/hrtimer.c:1654 [inline]
 __hrtimer_run_queues+0x334/0xe50 kernel/time/hrtimer.c:1750
 hrtimer_interrupt+0x392/0x980 kernel/time/hrtimer.c:1812
 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1095 [inline]
 __sysvec_apic_timer_interrupt+0x156/0x580 arch/x86/kernel/apic/apic.c:1112
 sysvec_apic_timer_interrupt+0x8c/0xb0 arch/x86/kernel/apic/apic.c:1106
 </IRQ>
 <TASK>
 asm_sysvec_apic_timer_interrupt+0x16/0x20 arch/x86/include/asm/idtentry.h:653
RIP: 0010:lock_acquire+0x112/0x5a0 kernel/locking/lockdep.c:5635
Code: ac 77 00 48 0f a3 1d 75 27 09 0d 73 0d e8 46 e3 08 00 84 c0 0f 84 b9 02 00 00 48 c7 c0 24 be 73 8e 48 c1 e8 03 42 0f b6 04 28 <84> c0 0f 85 dd 02 00 00 83 3d 03 5c 09 0d 00 0f 84 3f 01 00 00 65
RSP: 0018:ffffc90004ef79c0 EFLAGS: 00000a03
RAX: 0000000000000000 RBX: 0000000000000000 RCX: ffffffff816a61eb
RDX: 0000000000000000 RSI: ffffffff8b3d45c0 RDI: ffffffff8b3d4580
RBP: ffffc90004ef7b18 R08: dffffc0000000000 R09: fffffbfff1ce712e
R10: 0000000000000000 R11: dffffc0000000001 R12: 1ffff920009def40
R13: dffffc0000000000 R14: 0000000000000000 R15: ffff88802353b1d0
 __raw_spin_lock_bh include/linux/spinlock_api_smp.h:126 [inline]
 _raw_spin_lock_bh+0x31/0x40 kernel/locking/spinlock.c:178
 spin_lock_bh include/linux/spinlock.h:356 [inline]
 batadv_tt_local_purge+0x107/0x340 net/batman-adv/translation-table.c:1354
 batadv_tt_purge+0x31/0xa40 net/batman-adv/translation-table.c:3560
 process_one_work+0x8a9/0x11d0 kernel/workqueue.c:2292
 worker_thread+0xa47/0x1200 kernel/workqueue.c:2439
 kthread+0x28d/0x320 kernel/kthread.c:376
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:308
 </TASK>
rcu: rcu_preempt kthread starved for 10337 jiffies! g10293 f0x0 RCU_GP_WAIT_FQS(5) ->state=0x0 ->cpu=1
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:27032 pid:16    ppid:2      flags:0x00004000
Call Trace:
 <TASK>
 context_switch kernel/sched/core.c:5245 [inline]
 __schedule+0x142d/0x4550 kernel/sched/core.c:6558
 schedule+0xbf/0x180 kernel/sched/core.c:6634
 schedule_timeout+0x1b9/0x300 kernel/time/timer.c:1965
 rcu_gp_fqs_loop+0x2d2/0x1150 kernel/rcu/tree.c:1706
 rcu_gp_kthread+0xa3/0x3b0 kernel/rcu/tree.c:1905
 kthread+0x28d/0x320 kernel/kthread.c:376
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:308
 </TASK>
rcu: Stack dump where RCU GP kthread last ran:
CPU: 1 PID: 4492 Comm: syz-executor.2 Not tainted 6.1.92-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 04/02/2024
RIP: 0010:check_kcov_mode kernel/kcov.c:173 [inline]
RIP: 0010:__sanitizer_cov_trace_pc+0x13/0x60 kernel/kcov.c:207
Code: 48 8b 3d 58 fe e8 0c 48 89 de 5b e9 97 a8 56 00 cc cc cc cc cc cc cc 48 8b 04 24 65 48 8b 0d e4 e1 77 7e 65 8b 15 e5 e1 77 7e <f7> c2 00 01 ff 00 74 11 f7 c2 00 01 00 00 74 35 83 b9 1c 16 00 00
RSP: 0018:ffffc9000476f238 EFLAGS: 00000202
RAX: ffffffff817f4dfb RBX: 1ffff1101730859d RCX: ffff888026b15940
RDX: 0000000000000001 RSI: 000000000003ffff RDI: 0000000000040000
RBP: ffffc9000476f620 R08: ffffffff817f4dc4 R09: fffffbfff2093845
R10: 0000000000000000 R11: dffffc0000000001 R12: 0000000800000000
R13: dffffc0000000000 R14: 0000000000000000 R15: ffff8880b9842ce8
FS:  00007f4ecd8486c0(0000) GS:ffff8880b9900000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000001b32821000 CR3: 0000000064a70000 CR4: 00000000003506e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 <IRQ>
 </IRQ>
 <TASK>
 csd_lock_wait kernel/smp.c:424 [inline]
 smp_call_function_many_cond+0x1fcb/0x3460 kernel/smp.c:998
 on_each_cpu_cond_mask+0x3b/0x80 kernel/smp.c:1166
 on_each_cpu include/linux/smp.h:71 [inline]
 text_poke_sync arch/x86/kernel/alternative.c:1334 [inline]
 text_poke_bp_batch+0x2bb/0x940 arch/x86/kernel/alternative.c:1534
 text_poke_bp+0xc8/0x140 arch/x86/kernel/alternative.c:1771
 __static_call_transform+0x333/0x560 arch/x86/kernel/static_call.c:109
 arch_static_call_transform+0xcc/0x270 arch/x86/kernel/static_call.c:161
 __static_call_update+0xd4/0x5c0 kernel/static_call_inline.c:136
 tracepoint_update_call kernel/tracepoint.c:317 [inline]
 tracepoint_add_func+0x90c/0x9d0 kernel/tracepoint.c:358
 tracepoint_probe_register_prio_may_exist+0x11e/0x190 kernel/tracepoint.c:482
 bpf_raw_tp_link_attach+0x456/0x6b0 kernel/bpf/syscall.c:3372
 bpf_raw_tracepoint_open+0x196/0x210 kernel/bpf/syscall.c:3399
 __sys_bpf+0x4a7/0x6c0 kernel/bpf/syscall.c:5047
 __do_sys_bpf kernel/bpf/syscall.c:5109 [inline]
 __se_sys_bpf kernel/bpf/syscall.c:5107 [inline]
 __x64_sys_bpf+0x78/0x90 kernel/bpf/syscall.c:5107
 do_syscall_x64 arch/x86/entry/common.c:51 [inline]
 do_syscall_64+0x3b/0xb0 arch/x86/entry/common.c:81
 entry_SYSCALL_64_after_hwframe+0x68/0xd2
RIP: 0033:0x7f4ecca7cee9
Code: 28 00 00 00 75 05 48 83 c4 28 c3 e8 e1 20 00 00 90 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 b0 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007f4ecd8480c8 EFLAGS: 00000246 ORIG_RAX: 0000000000000141
RAX: ffffffffffffffda RBX: 00007f4eccbabf80 RCX: 00007f4ecca7cee9
RDX: 0000000000000010 RSI: 0000000020000bc0 RDI: 0000000000000011
RBP: 00007f4eccac949e R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 000000000000000b R14: 00007f4eccbabf80 R15: 00007fff5a03b158
 </TASK>

Crashes (3):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2024/05/26 09:21 linux-6.1.y 88690811da69 a10a183e .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan INFO: rcu detected stall in batadv_tt_purge
2024/05/26 09:15 linux-6.1.y 88690811da69 a10a183e .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan INFO: rcu detected stall in batadv_tt_purge
2024/03/24 12:46 linux-6.1.y d7543167affd 0ea90952 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan INFO: rcu detected stall in batadv_tt_purge
* Struck through repros no longer work on HEAD.