[v5.15] INFO: rcu detected stall in htable_gc

3 views
Skip to first unread message

syzbot

unread,
Aug 26, 2024, 7:32:30 PM8/26/24
to syzkaller...@googlegroups.com
Hello,

syzbot found the following issue on:

HEAD commit: fa93fa65db6e Linux 5.15.165
git tree: linux-5.15.y
console output: https://syzkaller.appspot.com/x/log.txt?x=161da47b980000
kernel config: https://syzkaller.appspot.com/x/.config?x=e925c06d1329f45e
dashboard link: https://syzkaller.appspot.com/bug?extid=75a537166aa8e3361383
compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40
userspace arch: arm64

Unfortunately, I don't have any reproducer for this issue yet.

Downloadable assets:
disk image: https://storage.googleapis.com/syzbot-assets/24db9409dadf/disk-fa93fa65.raw.xz
vmlinux: https://storage.googleapis.com/syzbot-assets/1a49888d62d1/vmlinux-fa93fa65.xz
kernel image: https://storage.googleapis.com/syzbot-assets/519fcf35a482/Image-fa93fa65.gz.xz

IMPORTANT: if you fix the issue, please add the following tag to the commit:
Reported-by: syzbot+75a537...@syzkaller.appspotmail.com

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


---
This report is generated by a bot. It may contain errors.
See https://goo.gl/tpsmEJ for more information about syzbot.
syzbot engineers can be reached at syzk...@googlegroups.com.

syzbot will keep track of this issue. See:
https://goo.gl/tpsmEJ#status for how to communicate with syzbot.

If the report is already addressed, let syzbot know by replying with:
#syz fix: exact-commit-title

If you want to overwrite report's subsystems, reply with:
#syz set subsystems: new-subsystem
(See the list of subsystem names on the web dashboard)

If the report is a duplicate of another one, reply with:
#syz dup: exact-subject-of-another-report

If you want to undo deduplication, reply with:
#syz undup

syzbot

unread,
Dec 4, 2024, 6:32:15 PM12/4/24
to syzkaller...@googlegroups.com
Auto-closing this bug as obsolete.
Crashes did not happen for a while, no reproducer and no activity.
Reply all
Reply to author
Forward
0 new messages