syzbot


INFO: rcu detected stall in batadv_dat_purge (3)

Status: auto-obsoleted due to no activity on 2025/08/09 21:42
Subsystems: batman
[Documentation on labels]
First crash: 106d, last: 106d
Similar bugs (3)
Kernel Title Rank 🛈 Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream INFO: rcu detected stall in batadv_dat_purge (2) kernel 1 1 964d 964d 0/29 auto-obsoleted due to no activity on 2023/04/12 18:40
upstream INFO: rcu detected stall in batadv_dat_purge batman 1 1 1414d 1414d 0/29 auto-closed as invalid on 2022/01/10 03:55
linux-5.15 BUG: soft lockup in batadv_dat_purge 1 1 819d 819d 0/3 auto-obsoleted due to no activity on 2023/09/06 15:35

Sample crash report:
rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
rcu: 	Tasks blocked on level-0 rcu_node (CPUs 0-1): P7661/1:b..l
rcu: 	(detected by 1, t=10502 jiffies, g=11393, q=506 ncpus=2)
task:syz.4.171       state:R  running task     stack:0     pid:7661  tgid:7660  ppid:6490   task_flags:0x40054c flags:0x00000018
Call trace:
 __switch_to+0x414/0x834 arch/arm64/kernel/process.c:734 (T)
 context_switch kernel/sched/core.c:5382 [inline]
 __schedule+0x13b0/0x28d4 kernel/sched/core.c:6767
 preempt_schedule_common+0xe0/0x194 kernel/sched/core.c:6947
 preempt_schedule+0x60/0x80 kernel/sched/core.c:6971
 __raw_spin_unlock include/linux/spinlock_api_smp.h:143 [inline]
 _raw_spin_unlock+0x74/0x78 kernel/locking/spinlock.c:186
 spin_unlock include/linux/spinlock.h:391 [inline]
 zap_pte_range mm/memory.c:1761 [inline]
 zap_pmd_range mm/memory.c:1823 [inline]
 zap_pud_range mm/memory.c:1852 [inline]
 zap_p4d_range mm/memory.c:1873 [inline]
 unmap_page_range+0x28a8/0x2fd0 mm/memory.c:1894
 unmap_single_vma mm/memory.c:1940 [inline]
 unmap_vmas+0x264/0x3d4 mm/memory.c:1984
 exit_mmap+0x1bc/0xbec mm/mmap.c:1284
 __mmput+0xec/0x3dc kernel/fork.c:1379
 mmput+0x70/0xac kernel/fork.c:1401
 exit_mm+0x13c/0x200 kernel/exit.c:589
 do_exit+0x470/0x1998 kernel/exit.c:940
 do_group_exit+0x194/0x22c kernel/exit.c:1102
 get_signal+0x11dc/0x12f8 kernel/signal.c:3034
 do_signal+0x274/0x4438 arch/arm64/kernel/signal.c:1615
 do_notify_resume+0xac/0x1ec arch/arm64/kernel/entry-common.c:148
 exit_to_user_mode_prepare arch/arm64/kernel/entry-common.c:169 [inline]
 exit_to_user_mode arch/arm64/kernel/entry-common.c:178 [inline]
 el0_svc+0xb4/0x17c arch/arm64/kernel/entry-common.c:768
 el0t_64_sync_handler+0x78/0x108 arch/arm64/kernel/entry-common.c:786
 el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:600
rcu: rcu_preempt kthread starved for 204 jiffies! g11393 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:0     pid:16    tgid:16    ppid:2      task_flags:0x208040 flags:0x00000010
Call trace:
 __switch_to+0x414/0x834 arch/arm64/kernel/process.c:734 (T)
 context_switch kernel/sched/core.c:5382 [inline]
 __schedule+0x13b0/0x28d4 kernel/sched/core.c:6767
 __schedule_loop kernel/sched/core.c:6845 [inline]
 schedule+0xb4/0x230 kernel/sched/core.c:6860
 schedule_timeout+0x128/0x270 kernel/time/sleep_timeout.c:99
 rcu_gp_fqs_loop+0x2b8/0x14e8 kernel/rcu/tree.c:2046
 rcu_gp_kthread+0xc0/0x2f8 kernel/rcu/tree.c:2248
 kthread+0x5fc/0x75c kernel/kthread.c:464
 ret_from_fork+0x10/0x20 arch/arm64/kernel/entry.S:847
rcu: Stack dump where RCU GP kthread last ran:
Sending NMI from CPU 1 to CPUs 0:
NMI backtrace for cpu 0
CPU: 0 UID: 0 PID: 4221 Comm: kworker/R-bat_e Not tainted 6.15.0-rc5-syzkaller-gc32f8dc5aaf9 #0 PREEMPT 
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025
Workqueue: bat_events batadv_dat_purge
pstate: 80400005 (Nzcv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
pc : rcu_read_lock include/linux/rcupdate.h:839 [inline]
pc : net_tx_action+0x574/0x864 net/core/dev.c:5503
lr : net_tx_action+0x570/0x864 net/core/dev.c:5501
sp : ffff800080007e60
x29: ffff800080007e80 x28: ffff80008f30e648 x27: dfff800000000000
x26: ffff80008f30e648 x25: dfff800000000000 x24: 1ffff00011e5161a
x23: ffff00019c37df00 x22: ffff00019c37dfc0 x21: ffff00019c37dfb8
x20: ffff0000c2878000 x19: 1fffe0003386fbf7 x18: ffff800090e59200
x17: ffff80010d10a000 x16: ffff8000805192b8 x15: 0000000000000001
x14: 1fffe0001850f01e x13: 0000000000000000 x12: 0000000000000000
x11: ffff800092d26c00 x10: 0000000000000003 x9 : 0000000000000000
x8 : 0000000001590eba x7 : ffff8000893aaa94 x6 : 0000000000000000
x5 : 0000000000000000 x4 : 0000000000000000 x3 : 0000000000000010
x2 : 0000000000000002 x1 : ffff80008e902b8e x0 : ffff80010d10a000
Call trace:
 __daif_local_irq_enable arch/arm64/include/asm/irqflags.h:26 [inline] (P)
 arch_local_irq_enable arch/arm64/include/asm/irqflags.h:48 [inline] (P)
 net_tx_action+0x574/0x864 net/core/dev.c:5501 (P)
 handle_softirqs+0x328/0xc88 kernel/softirq.c:579
 __do_softirq+0x14/0x20 kernel/softirq.c:613
 ____do_softirq+0x14/0x20 arch/arm64/kernel/irq.c:81
 call_on_irq_stack+0x24/0x30 arch/arm64/kernel/entry.S:891
 do_softirq_own_stack+0x20/0x2c arch/arm64/kernel/irq.c:86
 invoke_softirq kernel/softirq.c:460 [inline]
 __irq_exit_rcu+0x1b0/0x478 kernel/softirq.c:680
 irq_exit_rcu+0x14/0x84 kernel/softirq.c:696
 __el1_irq arch/arm64/kernel/entry-common.c:584 [inline]
 el1_interrupt+0x38/0x54 arch/arm64/kernel/entry-common.c:598
 el1h_64_irq_handler+0x18/0x24 arch/arm64/kernel/entry-common.c:603
 el1h_64_irq+0x6c/0x70 arch/arm64/kernel/entry.S:596
 __daif_local_irq_enable arch/arm64/include/asm/irqflags.h:26 [inline] (P)
 arch_local_irq_enable arch/arm64/include/asm/irqflags.h:48 [inline] (P)
 __local_bh_enable_ip+0x1f0/0x35c kernel/softirq.c:412 (P)
 __raw_spin_unlock_bh include/linux/spinlock_api_smp.h:167 [inline]
 _raw_spin_unlock_bh+0x3c/0x4c kernel/locking/spinlock.c:210
 spin_unlock_bh include/linux/spinlock.h:396 [inline]
 __batadv_dat_purge+0x2b0/0x360 net/batman-adv/distributed-arp-table.c:185
 batadv_dat_purge+0x28/0x78 net/batman-adv/distributed-arp-table.c:204
 process_one_work+0x7e8/0x156c kernel/workqueue.c:3238
 process_scheduled_works kernel/workqueue.c:3319 [inline]
 rescuer_thread+0x504/0xec8 kernel/workqueue.c:3496
 kthread+0x5fc/0x75c kernel/kthread.c:464
 ret_from_fork+0x10/0x20 arch/arm64/kernel/entry.S:847

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2025/05/11 21:35 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci c32f8dc5aaf9 77908e5f .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 INFO: rcu detected stall in batadv_dat_purge
* Struck through repros no longer work on HEAD.