[moderation] [fs?] BUG: soft lockup in file_free

1 view
Skip to first unread message

syzbot

unread,
6:58 AM (7 hours ago) 6:58 AM
to syzkaller-upst...@googlegroups.com
Hello,

syzbot found the following issue on:

HEAD commit: 596d152bc5e3 Merge branch 'for-next/core' into for-kernelci
git tree: git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci
console output: https://syzkaller.appspot.com/x/log.txt?x=154228ae580000
kernel config: https://syzkaller.appspot.com/x/.config?x=eb40ba923a822433
dashboard link: https://syzkaller.appspot.com/bug?extid=108e774ad0eb9db0d8bd
compiler: Debian clang version 21.1.8 (++20251221033036+2078da43e25a-1~exp1~20251221153213.50), Debian LLD 21.1.8
userspace arch: arm64
CC: [bra...@kernel.org ja...@suse.cz linux-...@vger.kernel.org linux-...@vger.kernel.org vi...@zeniv.linux.org.uk]

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

Downloadable assets:
disk image: https://storage.googleapis.com/syzbot-assets/32d15acc8c01/disk-596d152b.raw.xz
vmlinux: https://storage.googleapis.com/syzbot-assets/83b3d8d84761/vmlinux-596d152b.xz
kernel image: https://storage.googleapis.com/syzbot-assets/8edfcc3bf911/Image-596d152b.gz.xz

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

watchdog: BUG: soft lockup - CPU#0 stuck for 22s! [syz-executor:10668]
Modules linked in:
irq event stamp: 169424
hardirqs last enabled at (169423): [<ffff8000867cdd20>] __raw_spin_unlock_irqrestore include/linux/spinlock_api_smp.h:178 [inline]
hardirqs last enabled at (169423): [<ffff8000867cdd20>] _raw_spin_unlock_irqrestore+0x38/0x98 kernel/locking/spinlock.c:198
hardirqs last disabled at (169424): [<ffff8000867a94b4>] __el1_irq arch/arm64/kernel/entry-common.c:506 [inline]
hardirqs last disabled at (169424): [<ffff8000867a94b4>] el1_interrupt+0x28/0x60 arch/arm64/kernel/entry-common.c:522
softirqs last enabled at (169396): [<ffff80008030a098>] softirq_handle_end kernel/softirq.c:468 [inline]
softirqs last enabled at (169396): [<ffff80008030a098>] handle_softirqs+0xbc4/0xd34 kernel/softirq.c:650
softirqs last disabled at (169391): [<ffff8000800204b0>] __do_softirq+0x14/0x20 kernel/softirq.c:656
CPU: 0 UID: 0 PID: 10668 Comm: syz-executor Tainted: G L syzkaller #0 PREEMPT
Tainted: [L]=SOFTLOCKUP
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/18/2026
pstate: 63400005 (nZCv daif +PAN -UAO +TCO +DIT -SSBS BTYPE=--)
pc : lock_acquire+0x16c/0x368 arch/arm64/include/asm/irqflags.h:-1
lr : lockdep_recursion_finish kernel/locking/lockdep.c:470 [inline]
lr : lock_acquire+0x14c/0x368 kernel/locking/lockdep.c:5870
sp : ffff8000933d7a10
x29: ffff8000933d7a60 x28: 0000000000000000 x27: 0000000000000000
x26: ffff800088920230 x25: 0000000000000000 x24: 0000000000000000
x23: 0000000000000002 x22: ffff800088b673e0 x21: ffff800080b6550c
x20: 0000000000000000 x19: 0000000000000000 x18: 0000000000000000
x17: 0000000000000000 x16: 0000000000000000 x15: 0000000000000000
x14: 00000000ffff8000 x13: 0000000000000001 x12: 0000000000000000
x11: ffff80008a3f4d08 x10: 0000000000000003 x9 : 0000000000000000
x8 : 00000000000000c0 x7 : ffff800080b6550c x6 : 0000000000000000
x5 : 0000000000000000 x4 : 0000000000000000 x3 : 0000000000000002
x2 : 0000000000000008 x1 : ffff0000d34c5700 x0 : 0000000000000000
Call trace:
__daif_local_irq_restore arch/arm64/include/asm/irqflags.h:175 [inline] (P)
arch_local_irq_restore arch/arm64/include/asm/irqflags.h:195 [inline] (P)
lock_acquire+0x16c/0x368 kernel/locking/lockdep.c:5871 (P)
rcu_lock_acquire include/linux/rcupdate.h:300 [inline]
rcu_read_lock_sched include/linux/rcupdate.h:936 [inline]
pfn_valid+0xac/0x214 include/linux/mmzone.h:2281
lowmem_page_address include/linux/mm.h:2973 [inline]
folio_address include/linux/mm.h:2984 [inline]
slab_address mm/slab.h:153 [inline]
nearest_obj mm/slab.h:284 [inline]
check_slab_allocation+0xac/0x17c mm/kasan/common.c:229
__kasan_slab_pre_free+0x34/0x44 mm/kasan/common.c:261
kasan_slab_pre_free include/linux/kasan.h:199 [inline]
slab_free_hook mm/slub.c:2634 [inline]
slab_free mm/slub.c:6251 [inline]
kmem_cache_free+0x148/0x6b8 mm/slub.c:6378
file_free+0x128/0x1dc fs/file_table.c:104
__fput+0x538/0x744 fs/file_table.c:523
fput_close_sync+0x10c/0x278 fs/file_table.c:615
__do_sys_close fs/open.c:1507 [inline]
__se_sys_close fs/open.c:1492 [inline]
__arm64_sys_close+0x7c/0x10c fs/open.c:1492
__invoke_syscall arch/arm64/kernel/syscall.c:35 [inline]
invoke_syscall+0x98/0x244 arch/arm64/kernel/syscall.c:49
el0_svc_common+0xe8/0x23c arch/arm64/kernel/syscall.c:121
do_el0_svc+0x48/0x58 arch/arm64/kernel/syscall.c:140
el0_svc+0x64/0x260 arch/arm64/kernel/entry-common.c:736
el0t_64_sync_handler+0x48/0x148 arch/arm64/kernel/entry-common.c:755
el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:594
Sending NMI from CPU 0 to CPUs 1:
NMI backtrace for cpu 1
CPU: 1 UID: 0 PID: 1404 Comm: kworker/u8:6 Tainted: G L syzkaller #0 PREEMPT
Tainted: [L]=SOFTLOCKUP
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/18/2026
Workqueue: events_unbound toggle_allocation_gate
pstate: 83400005 (Nzcv daif +PAN -UAO +TCO +DIT -SSBS BTYPE=--)
pc : csd_lock_wait kernel/smp.c:342 [inline]
pc : smp_call_function_many_cond+0xfa4/0x1614 kernel/smp.c:892
lr : csd_lock_wait kernel/smp.c:342 [inline]
lr : smp_call_function_many_cond+0xfbc/0x1614 kernel/smp.c:892
sp : ffff800095337780
x29: ffff800095337890 x28: dfff800000000000 x27: ffff0001a5ff5780
x26: 0000000000000011 x25: 0000000000000000 x24: ffff80008897f680
x23: ffffffffffffffff x22: 1fffe00034bfeaf0 x21: 1fffe00034bfeaf1
x20: ffff0001a5fd6b68 x19: ffff0001a5ff5788 x18: 1fffe00034bfbe20
x17: ffff80008897b000 x16: ffff800088a2dc20 x15: ffff0001a5fdf10c
x14: ffff0001a5fdf108 x13: 0000000000000001 x12: 0000000000000000
x11: 0000000000000000 x10: 0000000000ff0100 x9 : 0000000000000000
x8 : 0000000000000011 x7 : 0000000000000000 x6 : 0000000000000000
x5 : 0000000000000001 x4 : 0000000000000000 x3 : ffff8000805a47c4
x2 : 0000000000000000 x1 : ffff0000ca241d00 x0 : 0000000000000000
Call trace:
__cmpwait_case_32 arch/arm64/include/asm/cmpxchg.h:233 [inline] (P)
__cmpwait arch/arm64/include/asm/cmpxchg.h:259 [inline] (P)
csd_lock_wait kernel/smp.c:342 [inline] (P)
smp_call_function_many_cond+0xfa4/0x1614 kernel/smp.c:892 (P)
smp_call_function_many kernel/smp.c:915 [inline]
smp_call_function+0x58/0xbc kernel/smp.c:935
kick_all_cpus_sync+0x28/0x34 kernel/smp.c:1081
arch_jump_label_transform_apply+0x14/0x20 arch/arm64/kernel/jump_label.c:34
__jump_label_update+0x314/0x33c kernel/jump_label.c:521
jump_label_update+0x41c/0x4a8 kernel/jump_label.c:910
static_key_enable_cpuslocked+0x11c/0x220 kernel/jump_label.c:210
static_key_enable+0x24/0x38 kernel/jump_label.c:223
toggle_allocation_gate+0xb8/0x28c mm/kfence/core.c:906
process_one_work kernel/workqueue.c:3314 [inline]
process_scheduled_works+0x79c/0x1098 kernel/workqueue.c:3397
worker_thread+0x754/0xba0 kernel/workqueue.c:3478
kthread+0x2f8/0x3c8 kernel/kthread.c:436
ret_from_fork+0x10/0x20 arch/arm64/kernel/entry.S:842
watchdog: BUG: soft lockup - CPU#1 stuck for 22s! [kworker/u8:6:1404]
Modules linked in:
irq event stamp: 2752288
hardirqs last enabled at (2752287): [<ffff8000867ad4a4>] irqentry_exit_to_kernel_mode_after_preempt include/linux/irq-entry-common.h:507 [inline]
hardirqs last enabled at (2752287): [<ffff8000867ad4a4>] arm64_exit_to_kernel_mode+0x80/0x94 arch/arm64/kernel/entry-common.c:62
hardirqs last disabled at (2752288): [<ffff8000867a94b4>] __el1_irq arch/arm64/kernel/entry-common.c:506 [inline]
hardirqs last disabled at (2752288): [<ffff8000867a94b4>] el1_interrupt+0x28/0x60 arch/arm64/kernel/entry-common.c:522
softirqs last enabled at (2752280): [<ffff80008030a098>] softirq_handle_end kernel/softirq.c:468 [inline]
softirqs last enabled at (2752280): [<ffff80008030a098>] handle_softirqs+0xbc4/0xd34 kernel/softirq.c:650
softirqs last disabled at (2752271): [<ffff8000800204b0>] __do_softirq+0x14/0x20 kernel/softirq.c:656
CPU: 1 UID: 0 PID: 1404 Comm: kworker/u8:6 Tainted: G L syzkaller #0 PREEMPT
Tainted: [L]=SOFTLOCKUP
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/18/2026
Workqueue: events_unbound toggle_allocation_gate
pstate: 83400005 (Nzcv daif +PAN -UAO +TCO +DIT -SSBS BTYPE=--)
pc : csd_lock_wait kernel/smp.c:342 [inline]
pc : smp_call_function_many_cond+0xfa4/0x1614 kernel/smp.c:892
lr : csd_lock_wait kernel/smp.c:342 [inline]
lr : smp_call_function_many_cond+0xfbc/0x1614 kernel/smp.c:892
sp : ffff800095337780
x29: ffff800095337890 x28: dfff800000000000 x27: ffff0001a5ff5780
x26: 0000000000000011 x25: 0000000000000000 x24: ffff80008897f680
x23: ffffffffffffffff x22: 1fffe00034bfeaf0 x21: 1fffe00034bfeaf1
x20: ffff0001a5fd6b68 x19: ffff0001a5ff5788 x18: 1fffe00034bfbe20
x17: ffff80008897b000 x16: ffff800088a2dc20 x15: ffff0001a5fdf10c
x14: ffff0001a5fdf108 x13: 0000000000000001 x12: 0000000000000000
x11: 0000000000000000 x10: 0000000000ff0100 x9 : 0000000000000000
x8 : 0000000000000011 x7 : 0000000000000000 x6 : 0000000000000000
x5 : 0000000000000001 x4 : 0000000000000000 x3 : ffff8000805a47c4
x2 : 0000000000000000 x1 : ffff0000ca241d00 x0 : 0000000000000000
Call trace:
__cmpwait_case_32 arch/arm64/include/asm/cmpxchg.h:233 [inline] (P)
__cmpwait arch/arm64/include/asm/cmpxchg.h:259 [inline] (P)
csd_lock_wait kernel/smp.c:342 [inline] (P)
smp_call_function_many_cond+0xfa4/0x1614 kernel/smp.c:892 (P)
smp_call_function_many kernel/smp.c:915 [inline]
smp_call_function+0x58/0xbc kernel/smp.c:935
kick_all_cpus_sync+0x28/0x34 kernel/smp.c:1081
arch_jump_label_transform_apply+0x14/0x20 arch/arm64/kernel/jump_label.c:34
__jump_label_update+0x314/0x33c kernel/jump_label.c:521
jump_label_update+0x41c/0x4a8 kernel/jump_label.c:910
static_key_enable_cpuslocked+0x11c/0x220 kernel/jump_label.c:210
static_key_enable+0x24/0x38 kernel/jump_label.c:223
toggle_allocation_gate+0xb8/0x28c mm/kfence/core.c:906
process_one_work kernel/workqueue.c:3314 [inline]
process_scheduled_works+0x79c/0x1098 kernel/workqueue.c:3397
worker_thread+0x754/0xba0 kernel/workqueue.c:3478
kthread+0x2f8/0x3c8 kernel/kthread.c:436
ret_from_fork+0x10/0x20 arch/arm64/kernel/entry.S:842
Sending NMI from CPU 1 to CPUs 0:
NMI backtrace for cpu 0
CPU: 0 UID: 0 PID: 10668 Comm: syz-executor Tainted: G L syzkaller #0 PREEMPT
Tainted: [L]=SOFTLOCKUP
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/18/2026
pstate: 83400005 (Nzcv daif +PAN -UAO +TCO +DIT -SSBS BTYPE=--)
pc : handle_softirqs+0x1d0/0xd34 kernel/softirq.c:610
lr : handle_softirqs+0x1cc/0xd34 kernel/softirq.c:606
sp : ffff80008e987ee0
x29: ffff80008e987f80 x28: ffff0000d34c5710 x27: 0000000000000386
x26: ffff0000d34c5708 x25: 1fffe0001a698ae1 x24: 0000000000000000
x23: ffff0000d34c5700 x22: dfff800000000000 x21: ffff0001a5fce480
x20: ffff80008891febc x19: ffff0001a5fce480 x18: 0000000000000000
x17: ffff80011d69a000 x16: ffff80008e980000 x15: 0000000000000000
x14: 0000000000000001 x13: 0000000000000001 x12: 0000000000000000
x11: ffff80008015517c x10: 0000000000000003 x9 : 0000000000000000
x8 : 00000000000295d2 x7 : 0000000000000000 x6 : 0000000000000000
x5 : 0000000000000001 x4 : 0000000000000008 x3 : ffff800080155224
x2 : 0000000000000000 x1 : ffff0000d34c5700 x0 : ffff80011d69a000
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)
handle_softirqs+0x1d0/0xd34 kernel/softirq.c:606 (P)
__do_softirq+0x14/0x20 kernel/softirq.c:656
____do_softirq+0x14/0x20 arch/arm64/kernel/irq.c:78
call_on_irq_stack+0x30/0x48 arch/arm64/kernel/entry.S:889
do_softirq_own_stack+0x20/0x2c arch/arm64/kernel/irq.c:83
invoke_softirq kernel/softirq.c:503 [inline]
__irq_exit_rcu+0x1ac/0x428 kernel/softirq.c:735
irq_exit_rcu+0x14/0x84 kernel/softirq.c:752
__el1_irq arch/arm64/kernel/entry-common.c:510 [inline]
el1_interrupt+0x40/0x60 arch/arm64/kernel/entry-common.c:522
el1h_64_irq_handler+0x18/0x24 arch/arm64/kernel/entry-common.c:527
el1h_64_irq+0x6c/0x70 arch/arm64/kernel/entry.S:590
__daif_local_irq_restore arch/arm64/include/asm/irqflags.h:175 [inline] (P)
arch_local_irq_restore arch/arm64/include/asm/irqflags.h:195 [inline] (P)
lock_acquire+0x16c/0x368 kernel/locking/lockdep.c:5871 (P)
rcu_lock_acquire include/linux/rcupdate.h:300 [inline]
rcu_read_lock_sched include/linux/rcupdate.h:936 [inline]
pfn_valid+0xac/0x214 include/linux/mmzone.h:2281
lowmem_page_address include/linux/mm.h:2973 [inline]
folio_address include/linux/mm.h:2984 [inline]
slab_address mm/slab.h:153 [inline]
nearest_obj mm/slab.h:284 [inline]
check_slab_allocation+0xac/0x17c mm/kasan/common.c:229
__kasan_slab_pre_free+0x34/0x44 mm/kasan/common.c:261
kasan_slab_pre_free include/linux/kasan.h:199 [inline]
slab_free_hook mm/slub.c:2634 [inline]
slab_free mm/slub.c:6251 [inline]
kmem_cache_free+0x148/0x6b8 mm/slub.c:6378
file_free+0x128/0x1dc fs/file_table.c:104
__fput+0x538/0x744 fs/file_table.c:523
fput_close_sync+0x10c/0x278 fs/file_table.c:615
__do_sys_close fs/open.c:1507 [inline]
__se_sys_close fs/open.c:1492 [inline]
__arm64_sys_close+0x7c/0x10c fs/open.c:1492
__invoke_syscall arch/arm64/kernel/syscall.c:35 [inline]
invoke_syscall+0x98/0x244 arch/arm64/kernel/syscall.c:49
el0_svc_common+0xe8/0x23c arch/arm64/kernel/syscall.c:121
do_el0_svc+0x48/0x58 arch/arm64/kernel/syscall.c:140
el0_svc+0x64/0x260 arch/arm64/kernel/entry-common.c:736
el0t_64_sync_handler+0x48/0x148 arch/arm64/kernel/entry-common.c:755
el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:594


---
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
Reply all
Reply to author
Forward
0 new messages