syzbot


INFO: rcu detected stall in htable_gc

Status: upstream: reported on 2024/08/26 23:32
Reported-by: syzbot+75a537166aa8e3361383@syzkaller.appspotmail.com
First crash: 56d, last: 56d

Sample crash report:
rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
rcu: 	0-...!: (1 ticks this GP) idle=749/1/0x4000000000000002 softirq=22190/22190 fqs=0 
	(detected by 1, t=10502 jiffies, g=26673, q=1717)
Task dump for CPU 0:
task:kworker/u4:14   state:R  running task     stack:    0 pid: 4430 ppid:     2 flags:0x0000000a
Workqueue: events_power_efficient htable_gc
Call trace:
 __switch_to+0x308/0x5e8 arch/arm64/kernel/process.c:518
 return_address+0x118/0x1ec arch/arm64/kernel/return_address.c:46
 rcu_dynticks_curr_cpu_in_eqs kernel/rcu/tree.c:331 [inline]
 rcu_is_watching+0x5c/0x18c kernel/rcu/tree.c:1123
 trace_irq_disable include/trace/events/preemptirq.h:36 [inline]
 trace_hardirqs_off_finish+0x320/0x71c kernel/trace/trace_preemptirq.c:67
 __enter_from_kernel_mode arch/arm64/kernel/entry-common.c:51 [inline]
 enter_from_kernel_mode+0x98/0x17c arch/arm64/kernel/entry-common.c:56
 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_restore arch/arm64/include/asm/irqflags.h:122 [inline]
 __local_bh_disable_ip+0xc0/0x2a0 kernel/softirq.c:324
 __raw_spin_lock_bh include/linux/spinlock_api_smp.h:134 [inline]
 _raw_spin_lock_bh+0xd4/0x1c4 kernel/locking/spinlock.c:178
 spin_lock_bh include/linux/spinlock.h:368 [inline]
 htable_selective_cleanup+0xb0/0x2dc net/netfilter/xt_hashlimit.c:369
 htable_gc+0x24/0xa8 net/netfilter/xt_hashlimit.c:385
 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 timer wakeup didn't happen for 10501 jiffies! g26673 f0x0 RCU_GP_WAIT_FQS(5) ->state=0x402
rcu: 	Possible timer handling issue on cpu=0 timer-softirq=10913
rcu: rcu_preempt kthread starved for 10502 jiffies! g26673 f0x0 RCU_GP_WAIT_FQS(5) ->state=0x402 ->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:I 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 0:
task:kworker/u4:14   state:R  running task     stack:    0 pid: 4430 ppid:     2 flags:0x0000000a
Workqueue: events_power_efficient htable_gc
Call trace:
 __switch_to+0x308/0x5e8 arch/arm64/kernel/process.c:518
 return_address+0x118/0x1ec arch/arm64/kernel/return_address.c:46
 rcu_dynticks_curr_cpu_in_eqs kernel/rcu/tree.c:331 [inline]
 rcu_is_watching+0x5c/0x18c kernel/rcu/tree.c:1123
 trace_irq_disable include/trace/events/preemptirq.h:36 [inline]
 trace_hardirqs_off_finish+0x320/0x71c kernel/trace/trace_preemptirq.c:67
 __enter_from_kernel_mode arch/arm64/kernel/entry-common.c:51 [inline]
 enter_from_kernel_mode+0x98/0x17c arch/arm64/kernel/entry-common.c:56
 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_restore arch/arm64/include/asm/irqflags.h:122 [inline]
 __local_bh_disable_ip+0xc0/0x2a0 kernel/softirq.c:324
 __raw_spin_lock_bh include/linux/spinlock_api_smp.h:134 [inline]
 _raw_spin_lock_bh+0xd4/0x1c4 kernel/locking/spinlock.c:178
 spin_lock_bh include/linux/spinlock.h:368 [inline]
 htable_selective_cleanup+0xb0/0x2dc net/netfilter/xt_hashlimit.c:369
 htable_gc+0x24/0xa8 net/netfilter/xt_hashlimit.c:385
 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

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2024/08/26 23:31 linux-5.15.y fa93fa65db6e 9aee4e0b .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-5-15-kasan-arm64 INFO: rcu detected stall in htable_gc
* Struck through repros no longer work on HEAD.