============================================ WARNING: possible recursive locking detected syzkaller #0 Not tainted -------------------------------------------- syz.3.79/7058 is trying to acquire lock: ffff0000f77a1800 (&ocfs2_sysfile_lock_key[TRUNCATE_LOG_SYSTEM_INODE]){+.+.}-{4:4}, at: inode_lock include/linux/fs.h:870 [inline] ffff0000f77a1800 (&ocfs2_sysfile_lock_key[TRUNCATE_LOG_SYSTEM_INODE]){+.+.}-{4:4}, at: ocfs2_try_to_free_truncate_log+0xb0/0x2e0 fs/ocfs2/alloc.c:6132 but task is already holding lock: ffff0000f77a1800 (&ocfs2_sysfile_lock_key[TRUNCATE_LOG_SYSTEM_INODE]){+.+.}-{4:4}, at: inode_lock include/linux/fs.h:870 [inline] ffff0000f77a1800 (&ocfs2_sysfile_lock_key[TRUNCATE_LOG_SYSTEM_INODE]){+.+.}-{4:4}, at: ocfs2_defrag_extent fs/ocfs2/move_extents.c:247 [inline] ffff0000f77a1800 (&ocfs2_sysfile_lock_key[TRUNCATE_LOG_SYSTEM_INODE]){+.+.}-{4:4}, at: __ocfs2_move_extents_range+0xd98/0x2ad8 fs/ocfs2/move_extents.c:856 other info that might help us debug this: Possible unsafe locking scenario: CPU0 ---- lock(&ocfs2_sysfile_lock_key[TRUNCATE_LOG_SYSTEM_INODE]); lock(&ocfs2_sysfile_lock_key[TRUNCATE_LOG_SYSTEM_INODE]); *** DEADLOCK *** May be due to missing lock nesting notation 5 locks held by syz.3.79/7058: #0: ffff0000c7188428 (sb_writers#15){.+.+}-{0:0}, at: mnt_want_write_file+0x64/0x1e8 fs/namespace.c:601 #1: ffff0000f77a5100 (&sb->s_type->i_mutex_key#22){+.+.}-{4:4}, at: inode_lock include/linux/fs.h:870 [inline] #1: ffff0000f77a5100 (&sb->s_type->i_mutex_key#22){+.+.}-{4:4}, at: ocfs2_move_extents+0x16c/0x7f0 fs/ocfs2/move_extents.c:904 #2: ffff0000f77a4da0 (&ocfs2_file_ip_alloc_sem_key){++++}-{4:4}, at: ocfs2_move_extents+0x308/0x7f0 fs/ocfs2/move_extents.c:924 #3: ffff0000f9236d80 (&ocfs2_sysfile_lock_key[EXTENT_ALLOC_SYSTEM_INODE]){+.+.}-{4:4}, at: inode_lock include/linux/fs.h:870 [inline] #3: ffff0000f9236d80 (&ocfs2_sysfile_lock_key[EXTENT_ALLOC_SYSTEM_INODE]){+.+.}-{4:4}, at: ocfs2_reserve_suballoc_bits+0x12c/0x3b9c fs/ocfs2/suballoc.c:788 #4: ffff0000f77a1800 (&ocfs2_sysfile_lock_key[TRUNCATE_LOG_SYSTEM_INODE]){+.+.}-{4:4}, at: inode_lock include/linux/fs.h:870 [inline] #4: ffff0000f77a1800 (&ocfs2_sysfile_lock_key[TRUNCATE_LOG_SYSTEM_INODE]){+.+.}-{4:4}, at: ocfs2_defrag_extent fs/ocfs2/move_extents.c:247 [inline] #4: ffff0000f77a1800 (&ocfs2_sysfile_lock_key[TRUNCATE_LOG_SYSTEM_INODE]){+.+.}-{4:4}, at: __ocfs2_move_extents_range+0xd98/0x2ad8 fs/ocfs2/move_extents.c:856 stack backtrace: CPU: 0 UID: 0 PID: 7058 Comm: syz.3.79 Not tainted syzkaller #0 PREEMPT Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 06/30/2025 Call trace: show_stack+0x2c/0x3c arch/arm64/kernel/stacktrace.c:499 (C) __dump_stack+0x30/0x40 lib/dump_stack.c:94 dump_stack_lvl+0xd8/0x12c lib/dump_stack.c:120 dump_stack+0x1c/0x28 lib/dump_stack.c:129 print_deadlock_bug+0x2e8/0x2f0 kernel/locking/lockdep.c:3041 check_deadlock kernel/locking/lockdep.c:3093 [inline] validate_chain kernel/locking/lockdep.c:3895 [inline] __lock_acquire+0x2940/0x30a4 kernel/locking/lockdep.c:5237 lock_acquire+0x14c/0x2e0 kernel/locking/lockdep.c:5868 down_write+0x50/0xc0 kernel/locking/rwsem.c:1590 inode_lock include/linux/fs.h:870 [inline] ocfs2_try_to_free_truncate_log+0xb0/0x2e0 fs/ocfs2/alloc.c:6132 ocfs2_reserve_clusters_with_limit+0x3b4/0x9e0 fs/ocfs2/suballoc.c:1186 ocfs2_reserve_clusters+0x3c/0x50 fs/ocfs2/suballoc.c:1229 ocfs2_defrag_extent fs/ocfs2/move_extents.c:266 [inline] __ocfs2_move_extents_range+0x10bc/0x2ad8 fs/ocfs2/move_extents.c:856 ocfs2_move_extents+0x314/0x7f0 fs/ocfs2/move_extents.c:926 ocfs2_ioctl_move_extents+0x424/0x5f0 fs/ocfs2/move_extents.c:1052 ocfs2_ioctl+0x1c4/0x738 fs/ocfs2/ioctl.c:946 vfs_ioctl fs/ioctl.c:51 [inline] __do_sys_ioctl fs/ioctl.c:598 [inline] __se_sys_ioctl fs/ioctl.c:584 [inline] __arm64_sys_ioctl+0x14c/0x1c4 fs/ioctl.c:584 __invoke_syscall arch/arm64/kernel/syscall.c:35 [inline] invoke_syscall+0x98/0x254 arch/arm64/kernel/syscall.c:49 el0_svc_common+0x130/0x23c arch/arm64/kernel/syscall.c:132 do_el0_svc+0x48/0x58 arch/arm64/kernel/syscall.c:151 el0_svc+0x5c/0x254 arch/arm64/kernel/entry-common.c:744 el0t_64_sync_handler+0x84/0x12c arch/arm64/kernel/entry-common.c:763 el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:596