syzbot


INFO: rcu detected stall in mld_ifc_work

Status: upstream: reported syz repro on 2024/09/10 22:08
Bug presence: origin:lts-only
[Documentation on labels]
Reported-by: syzbot+daca8540768c6abc32f5@syzkaller.appspotmail.com
First crash: 161d, last: 78d
Bug presence (2)
Date Name Commit Repro Result
2024/12/02 linux-5.15.y (ToT) 0a51d2d4527b C [report] INFO: rcu detected stall in corrupted
2024/12/02 upstream (ToT) e70140ba0d2b C Didn't crash
Similar bugs (7)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream INFO: rcu detected stall in mld_ifc_work net C inconclusive 1 1101d 1101d 22/28 fixed on 2023/02/24 13:50
linux-6.1 INFO: rcu detected stall in mld_ifc_work origin:lts-only C inconclusive 1 67d 113d 0/3 upstream: reported C repro on 2024/10/28 06:47
android-5-15 BUG: soft lockup in mld_ifc_work 1 273d 273d 0/2 auto-obsoleted due to no activity on 2024/08/19 06:49
linux-6.1 BUG: soft lockup in mld_ifc_work 1 622d 622d 0/3 auto-obsoleted due to no activity on 2023/09/15 05:45
linux-5.15 BUG: soft lockup in mld_ifc_work 1 579d 579d 0/3 auto-obsoleted due to no activity on 2023/10/28 19:55
upstream BUG: soft lockup in mld_ifc_work (2) wireless C 2 283d 295d 26/28 fixed on 2024/08/06 11:02
upstream BUG: soft lockup in mld_ifc_work net 6 576d 551d 0/28 auto-obsoleted due to no activity on 2023/10/31 17:53
Last patch testing requests (1)
Created Duration User Patch Repo Result
2025/02/10 18:41 16m retest repro linux-5.15.y report log
Fix bisection attempts (1)
Created Duration User Patch Repo Result
2025/01/26 19:56 51m fix candidate upstream error job log

Sample crash report:
rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
rcu: 	Tasks blocked on level-0 rcu_node (CPUs 0-1): P4271/1:b..l
	(detected by 1, t=10502 jiffies, g=6997, q=127)
task:kworker/1:10    state:R  running task     stack:    0 pid: 4271 ppid:     2 flags:0x00000008
Workqueue: mld mld_ifc_work
Call trace:
 __switch_to+0x308/0x5e8 arch/arm64/kernel/process.c:518
 context_switch kernel/sched/core.c:5027 [inline]
 __schedule+0xf10/0x1e48 kernel/sched/core.c:6373
 preempt_schedule_irq+0x90/0x274 kernel/sched/core.c:6777
 arm64_preempt_schedule_irq+0x174/0x2c4 arch/arm64/kernel/entry-common.c:260
 el1_interrupt+0x40/0x58 arch/arm64/kernel/entry-common.c:463
 el1h_64_irq_handler+0x18/0x24 arch/arm64/kernel/entry-common.c:470
 el1h_64_irq+0x78/0x7c arch/arm64/kernel/entry.S:522
 __preempt_count_dec_and_test arch/arm64/include/asm/preempt.h:64 [inline]
 rcu_is_watching+0xd0/0x18c kernel/rcu/tree.c:1124
 rcu_read_lock_held_common kernel/rcu/update.c:108 [inline]
 rcu_read_lock_held+0x18/0x50 kernel/rcu/update.c:309
 __in6_dev_get include/net/addrconf.h:321 [inline]
 mld_sendpack+0x238/0x1264 net/ipv6/mcast.c:1793
 mld_send_cr net/ipv6/mcast.c:2121 [inline]
 mld_ifc_work+0x85c/0xb9c net/ipv6/mcast.c:2653
 process_one_work+0x790/0x11b8 kernel/workqueue.c:2310
 worker_thread+0x910/0x1034 kernel/workqueue.c:2457
 kthread+0x37c/0x45c kernel/kthread.c:334
 ret_from_fork+0x10/0x20 arch/arm64/kernel/entry.S:870
rcu: rcu_preempt kthread starved for 10498 jiffies! g6997 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:    0 pid:   15 ppid:     2 flags:0x00000008
Call trace:
 __switch_to+0x308/0x5e8 arch/arm64/kernel/process.c:518
 context_switch kernel/sched/core.c:5027 [inline]
 __schedule+0xf10/0x1e48 kernel/sched/core.c:6373
 schedule+0x11c/0x1c8 kernel/sched/core.c:6456
 schedule_timeout+0x1d8/0x344 kernel/time/timer.c:1914
 rcu_gp_fqs_loop+0x26c/0x13d4 kernel/rcu/tree.c:1972
 rcu_gp_kthread+0xc4/0x2c4 kernel/rcu/tree.c:2145
 kthread+0x37c/0x45c kernel/kthread.c:334
 ret_from_fork+0x10/0x20 arch/arm64/kernel/entry.S:870
rcu: Stack dump where RCU GP kthread last ran:
Task dump for CPU 1:
task:syz.0.77        state:R  running task     stack:    0 pid: 4341 ppid:  4142 flags:0x00000000
Call trace:
 dump_backtrace+0x0/0x530 arch/arm64/kernel/stacktrace.c:152
 show_stack+0x2c/0x3c arch/arm64/kernel/stacktrace.c:216
 sched_show_task+0x43c/0x574 kernel/sched/core.c:8637
 dump_cpu_task+0x84/0xa8 kernel/sched/core.c:10924
 rcu_check_gp_kthread_starvation+0x1f0/0x254 kernel/rcu/tree_stall.h:488
 print_other_cpu_stall+0x202c/0x2290 kernel/rcu/tree_stall.h:592
 check_cpu_stall kernel/rcu/tree_stall.h:745 [inline]
 rcu_pending kernel/rcu/tree.c:3932 [inline]
 rcu_sched_clock_irq+0x1894/0x1b8c kernel/rcu/tree.c:2619
 update_process_times+0x1d4/0x270 kernel/time/timer.c:1818
 tick_sched_handle kernel/time/tick-sched.c:254 [inline]
 tick_sched_timer+0x340/0x4f8 kernel/time/tick-sched.c:1473
 __run_hrtimer kernel/time/hrtimer.c:1688 [inline]
 __hrtimer_run_queues+0x458/0xca4 kernel/time/hrtimer.c:1752
 hrtimer_interrupt+0x2c0/0xb64 kernel/time/hrtimer.c:1814
 timer_handler drivers/clocksource/arm_arch_timer.c:659 [inline]
 arch_timer_handler_virt+0x74/0x88 drivers/clocksource/arm_arch_timer.c:670
 handle_percpu_devid_irq+0x29c/0x7fc kernel/irq/chip.c:930
 generic_handle_irq_desc include/linux/irqdesc.h:158 [inline]
 handle_irq_desc kernel/irq/irqdesc.c:652 [inline]
 handle_domain_irq+0xec/0x178 kernel/irq/irqdesc.c:707
 gic_handle_irq+0x78/0x1c8 drivers/irqchip/irq-gic-v3.c:765
 call_on_irq_stack+0x24/0x4c arch/arm64/kernel/entry.S:899
 do_interrupt_handler+0x74/0x94 arch/arm64/kernel/entry-common.c:267
 el1_interrupt+0x30/0x58 arch/arm64/kernel/entry-common.c:454
 el1h_64_irq_handler+0x18/0x24 arch/arm64/kernel/entry-common.c:470
 el1h_64_irq+0x78/0x7c arch/arm64/kernel/entry.S:522
 arch_local_irq_enable arch/arm64/include/asm/irqflags.h:35 [inline]
 __raw_spin_unlock_irq include/linux/spinlock_api_smp.h:168 [inline]
 _raw_spin_unlock_irq+0xa4/0x134 kernel/locking/spinlock.c:202
 spin_unlock_irq include/linux/spinlock.h:413 [inline]
 __set_current_blocked kernel/signal.c:3088 [inline]
 set_current_blocked kernel/signal.c:3072 [inline]
 signal_delivered kernel/signal.c:2936 [inline]
 signal_setup_done+0x3b4/0x5e8 kernel/signal.c:2947
 handle_signal arch/arm64/kernel/signal.c:839 [inline]
 do_signal arch/arm64/kernel/signal.c:905 [inline]
 do_notify_resume+0x870/0x32b8 arch/arm64/kernel/signal.c:943
 prepare_exit_to_user_mode arch/arm64/kernel/entry-common.c:133 [inline]
 exit_to_user_mode arch/arm64/kernel/entry-common.c:138 [inline]
 el0_svc+0xfc/0x1f0 arch/arm64/kernel/entry-common.c:609
 el0t_64_sync_handler+0x84/0xe4 arch/arm64/kernel/entry-common.c:626
 el0t_64_sync+0x1a0/0x1a4 arch/arm64/kernel/entry.S:584

Crashes (2):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2024/12/02 04:52 linux-5.15.y 0a51d2d4527b 68914665 .config console log report syz / log [disk image] [vmlinux] [kernel image] ci2-linux-5-15-kasan-arm64 INFO: rcu detected stall in mld_ifc_work
2024/09/10 22:07 linux-5.15.y 14e468424d3e 86aa7bd7 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-5-15-kasan INFO: rcu detected stall in mld_ifc_work
* Struck through repros no longer work on HEAD.