============================================ WARNING: possible recursive locking detected syzkaller #0 Not tainted -------------------------------------------- syz.4.161/4995 is trying to acquire lock: ffff88805e223f60 (&ocfs2_file_ip_alloc_sem_key){++++}-{3:3}, at: ocfs2_read_virt_blocks+0x240/0x8e0 fs/ocfs2/extent_map.c:984 but task is already holding lock: ffff88805e0ddbe0 ( &ocfs2_file_ip_alloc_sem_key){++++}-{3:3}, at: ocfs2_move_extents+0x3fc/0xa40 fs/ocfs2/move_extents.c:938 other info that might help us debug this: Possible unsafe locking scenario: CPU0 ---- lock(&ocfs2_file_ip_alloc_sem_key); lock(&ocfs2_file_ip_alloc_sem_key); *** DEADLOCK *** May be due to missing lock nesting notation 9 locks held by syz.4.161/4995: #0: ffff888075bea460 (sb_writers#19){.+.+}-{0:0}, at: mnt_want_write_file+0x5c/0x200 fs/namespace.c:430 #1: ffff88805e0ddf48 (&sb->s_type->i_mutex_key#28){+.+.}-{3:3}, at: inode_lock include/linux/fs.h:787 [inline] #1: ffff88805e0ddf48 (&sb->s_type->i_mutex_key#28){+.+.}-{3:3}, at: ocfs2_move_extents+0x19d/0xa40 fs/ocfs2/move_extents.c:918 #2: ffff88805e0ddbe0 (&ocfs2_file_ip_alloc_sem_key){++++}-{3:3}, at: ocfs2_move_extents+0x3fc/0xa40 fs/ocfs2/move_extents.c:938 #3: ffff88805e226d88 (&ocfs2_sysfile_lock_key[args->fi_sysfile_type]#5){+.+.}-{3:3}, at: inode_lock include/linux/fs.h:787 [inline] ffff88805e226d88 (&ocfs2_sysfile_lock_key[args->fi_sysfile_type]#5){+.+.}-{3:3}, at: ocfs2_reserve_suballoc_bits+0x16d/0x44b0 fs/ocfs2/suballoc.c:804 #4: ffff88805e2209c8 (&ocfs2_sysfile_lock_key[args->fi_sysfile_type]#8){+.+.}-{3:3}, at: inode_lock include/linux/fs.h:787 [inline] #4: ffff88805e2209c8 (&ocfs2_sysfile_lock_key[args->fi_sysfile_type]#8){+.+.}-{3:3}, at: ocfs2_move_extent fs/ocfs2/move_extents.c:640 [inline] #4: ffff88805e2209c8 (&ocfs2_sysfile_lock_key[args->fi_sysfile_type]#8){+.+.}-{3:3}, at: __ocfs2_move_extents_range+0x131f/0x3450 fs/ocfs2/move_extents.c:868 #5: ffff8880743ec2c8 (&ocfs2_sysfile_lock_key[args->fi_sysfile_type]#7){+.+.}-{3:3}, at: inode_lock include/linux/fs.h:787 [inline] #5: ffff8880743ec2c8 (&ocfs2_sysfile_lock_key[args->fi_sysfile_type]#7){+.+.}-{3:3}, at: ocfs2_move_extent fs/ocfs2/move_extents.c:648 [inline] #5: ffff8880743ec2c8 (&ocfs2_sysfile_lock_key[args->fi_sysfile_type]#7){+.+.}-{3:3}, at: __ocfs2_move_extents_range+0x1a31/0x3450 fs/ocfs2/move_extents.c:868 #6: ffff888075bea650 (sb_internal#2){.+.+}-{0:0}, at: ocfs2_move_extent fs/ocfs2/move_extents.c:650 [inline] #6: ffff888075bea650 (sb_internal#2){.+.+}-{0:0}, at: __ocfs2_move_extents_range+0x1a42/0x3450 fs/ocfs2/move_extents.c:868 #7: ffff888024662ce8 (&journal->j_trans_barrier){.+.+}-{3:3}, at: ocfs2_start_trans+0x3a6/0x6f0 fs/ocfs2/journal.c:374 #8: ffff88801f24e990 (jbd2_handle){++++}-{0:0}, at: start_this_handle+0x12d5/0x1560 fs/jbd2/transaction.c:462 stack backtrace: CPU: 0 PID: 4995 Comm: syz.4.161 Not tainted syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/24/2026 Call Trace: dump_stack_lvl+0x188/0x250 lib/dump_stack.c:106 __lock_acquire+0x1247/0x7b50 kernel/locking/lockdep.c:-1 lock_acquire+0x19e/0x400 kernel/locking/lockdep.c:5623 down_read+0x44/0x2e0 kernel/locking/rwsem.c:1498 ocfs2_read_virt_blocks+0x240/0x8e0 fs/ocfs2/extent_map.c:984 ocfs2_read_dir_block fs/ocfs2/dir.c:508 [inline] ocfs2_find_entry_el fs/ocfs2/dir.c:715 [inline] ocfs2_find_entry+0x39d/0x1f90 fs/ocfs2/dir.c:1091 ocfs2_find_files_on_disk+0xdb/0x2f0 fs/ocfs2/dir.c:1995 ocfs2_lookup_ino_from_name+0x4f/0xf0 fs/ocfs2/dir.c:2017 ocfs2_find_victim_alloc_group+0x19e/0x960 fs/ocfs2/move_extents.c:385 ocfs2_move_extent fs/ocfs2/move_extents.c:658 [inline] __ocfs2_move_extents_range+0x1c72/0x3450 fs/ocfs2/move_extents.c:868 ocfs2_move_extents+0x409/0xa40 fs/ocfs2/move_extents.c:940 ocfs2_ioctl_move_extents+0x4d7/0x6e0 fs/ocfs2/move_extents.c:1066 ocfs2_ioctl+0x31f/0x7a0 fs/ocfs2/ioctl.c:947 vfs_ioctl fs/ioctl.c:51 [inline] __do_sys_ioctl fs/ioctl.c:874 [inline] __se_sys_ioctl+0xfa/0x170 fs/ioctl.c:860 do_syscall_x64 arch/x86/entry/common.c:50 [inline] do_syscall_64+0x4c/0xa0 arch/x86/entry/common.c:80 entry_SYSCALL_64_after_hwframe+0x66/0xd0 RIP: 0033:0x7fe50c81e0d9 Code: ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 00 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 e8 ff ff ff f7 d8 64 89 01 48 RSP: 002b:00007fe50aa55028 EFLAGS: 00000246 ORIG_RAX: 0000000000000010 RAX: ffffffffffffffda RBX: 00007fe50caa6090 RCX: 00007fe50c81e0d9 RDX: 00002000000000c0 RSI: 0000000040406f06 RDI: 0000000000000005 RBP: 00007fe50c8b5024 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 R13: 00007fe50caa6128 R14: 00007fe50caa6090 R15: 00007ffcd8fafa98 ocfs2: Unmounting device (7,4) on (node local)