syzbot has found a reproducer for the following issue on:
HEAD commit: 024f76bca9d0 Linux 6.1.49
git tree: linux-6.1.y
console output:
https://syzkaller.appspot.com/x/log.txt?x=105fd49fa80000
syz repro:
https://syzkaller.appspot.com/x/repro.syz?x=12283fcfa80000
watchdog: BUG: soft lockup - CPU#1 stuck for 23s! [swapper/1:0]
Modules linked in:
irq event stamp: 1269373
hardirqs last enabled at (1269372): [<ffff80001220974c>] __raw_spin_unlock_irq include/linux/spinlock_api_smp.h:159 [inline]
hardirqs last enabled at (1269372): [<ffff80001220974c>] _raw_spin_unlock_irq+0x3c/0x90 kernel/locking/spinlock.c:202
hardirqs last disabled at (1269373): [<ffff800012124f2c>] __el1_irq arch/arm64/kernel/entry-common.c:468 [inline]
hardirqs last disabled at (1269373): [<ffff800012124f2c>] el1_interrupt+0x24/0x68 arch/arm64/kernel/entry-common.c:486
softirqs last enabled at (1213776): [<ffff800008020d74>] softirq_handle_end kernel/softirq.c:414 [inline]
softirqs last enabled at (1213776): [<ffff800008020d74>] __do_softirq+0xc14/0xea0 kernel/softirq.c:600
softirqs last disabled at (1213795): [<ffff80000802a994>] ____do_softirq+0x14/0x20 arch/arm64/kernel/irq.c:79
CPU: 1 PID: 0 Comm: swapper/1 Not tainted 6.1.49-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/26/2023
pstate: 00400005 (nzcv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
pc : __sanitizer_cov_trace_cmp8+0x14/0xa0 kernel/kcov.c:284
lr : pie_calculate_probability+0x520/0x7bc net/sched/sch_pie.c:408
sp : ffff800008017b30
x29: ffff800008017b70 x28: 0000000000000000 x27: 0000000000000000
x26: dfff800000000000 x25: ffff8000287479f0 x24: ffff800028747a0c
x23: 1fffe0001afd6d60 x22: 0000000000000000 x21: 0000000000000000
x20: 1ffff000050e8f3e x19: ffff8000287479d0 x18: 0000000000000140
x17: 0000000000420042 x16: ffff8000084f9edc x15: 0000000000000100
x14: 1ffff00002b160b0 x13: dfff800000000000 x12: ffff700001002f60
x11: ff808000107285fc x10: 0000000000000000 x9 : ffff0000c0a39bc0
x8 : 0000000000000102 x7 : ffff800010730590 x6 : 0000000000000000
x5 : 0000000000000000 x4 : 0000000000000001 x3 : ffff80000831cff8
x2 : 0000000000000000 x1 : 0000000000000000 x0 : 0000000000000000
Call trace:
preempt_count arch/arm64/include/asm/preempt.h:13 [inline]
check_kcov_mode kernel/kcov.c:173 [inline]
write_comp_data kernel/kcov.c:236 [inline]
__sanitizer_cov_trace_cmp8+0x14/0xa0 kernel/kcov.c:284
fq_pie_timer+0x1f0/0x41c net/sched/sch_fq_pie.c:387
call_timer_fn+0x1c0/0xa1c kernel/time/timer.c:1474
expire_timers kernel/time/timer.c:1519 [inline]
__run_timers+0x554/0x718 kernel/time/timer.c:1790
run_timer_softirq+0x7c/0x114 kernel/time/timer.c:1803
__do_softirq+0x30c/0xea0 kernel/softirq.c:571
____do_softirq+0x14/0x20 arch/arm64/kernel/irq.c:79
call_on_irq_stack+0x24/0x4c arch/arm64/kernel/entry.S:889
do_softirq_own_stack+0x20/0x2c arch/arm64/kernel/irq.c:84
invoke_softirq kernel/softirq.c:452 [inline]
__irq_exit_rcu+0x28c/0x534 kernel/softirq.c:650
irq_exit_rcu+0x14/0x84 kernel/softirq.c:662
__el1_irq arch/arm64/kernel/entry-common.c:472 [inline]
el1_interrupt+0x38/0x68 arch/arm64/kernel/entry-common.c:486
el1h_64_irq_handler+0x18/0x24 arch/arm64/kernel/entry-common.c:491
el1h_64_irq+0x64/0x68 arch/arm64/kernel/entry.S:577
arch_local_irq_enable+0xc/0x18 arch/arm64/include/asm/irqflags.h:35
default_idle_call+0x68/0xdc kernel/sched/idle.c:109
cpuidle_idle_call kernel/sched/idle.c:191 [inline]
do_idle+0x1e0/0x514 kernel/sched/idle.c:303
cpu_startup_entry+0x24/0x28 kernel/sched/idle.c:400
secondary_start_kernel+0x19c/0x1c4 arch/arm64/kernel/smp.c:265
__secondary_switched+0xb0/0xb4 arch/arm64/kernel/head.S:618
---
If you want syzbot to run the reproducer, reply with:
#syz test: git://repo/address.git branch-or-commit-hash
If you attach or paste a git patch, syzbot will apply it before testing.