ntfs: volume version 3.1. ====================================================== WARNING: possible circular locking dependency detected 4.19.211-syzkaller #0 Not tainted ------------------------------------------------------ syz-executor.1/10126 is trying to acquire lock: 00000000931e91d1 (&ni->mrec_lock){+.+.}, at: map_mft_record+0x3c/0xc70 fs/ntfs/mft.c:168 but task is already holding lock: 00000000b447ee64 (&rl->lock){++++}, at: ntfs_truncate+0x1a2/0x2820 fs/ntfs/inode.c:2390 which lock already depends on the new lock. the existing dependency chain (in reverse order) is: -> #1 (&rl->lock){++++}: ntfs_read_block fs/ntfs/aops.c:265 [inline] ntfs_readpage+0x1909/0x21b0 fs/ntfs/aops.c:452 do_read_cache_page+0x533/0x1170 mm/filemap.c:2828 read_mapping_page include/linux/pagemap.h:402 [inline] ntfs_map_page fs/ntfs/aops.h:89 [inline] ntfs_sync_mft_mirror+0x24f/0x1d00 fs/ntfs/mft.c:494 write_mft_record_nolock+0x13f1/0x16c0 fs/ntfs/mft.c:819 write_mft_record fs/ntfs/mft.h:109 [inline] __ntfs_write_inode+0x609/0xe10 fs/ntfs/inode.c:3064 ntfs_commit_inode fs/ntfs/inode.h:315 [inline] ntfs_put_super+0x1132/0x16f0 fs/ntfs/super.c:2273 generic_shutdown_super+0x144/0x370 fs/super.c:456 kill_block_super+0x97/0xf0 fs/super.c:1185 deactivate_locked_super+0x94/0x160 fs/super.c:329 deactivate_super+0x174/0x1a0 fs/super.c:360 cleanup_mnt+0x1a8/0x290 fs/namespace.c:1098 task_work_run+0x148/0x1c0 kernel/task_work.c:113 tracehook_notify_resume include/linux/tracehook.h:193 [inline] exit_to_usermode_loop+0x251/0x2a0 arch/x86/entry/common.c:167 prepare_exit_to_usermode arch/x86/entry/common.c:198 [inline] syscall_return_slowpath arch/x86/entry/common.c:271 [inline] do_syscall_64+0x538/0x620 arch/x86/entry/common.c:296 entry_SYSCALL_64_after_hwframe+0x49/0xbe -> #0 (&ni->mrec_lock){+.+.}: __mutex_lock_common kernel/locking/mutex.c:937 [inline] __mutex_lock+0xd7/0x1190 kernel/locking/mutex.c:1078 map_mft_record+0x3c/0xc70 fs/ntfs/mft.c:168 ntfs_truncate+0x202/0x2820 fs/ntfs/inode.c:2395 ntfs_truncate_vfs fs/ntfs/inode.c:2875 [inline] ntfs_setattr+0x1b6/0x620 fs/ntfs/inode.c:2925 notify_change+0x70b/0xfc0 fs/attr.c:334 do_truncate+0x134/0x1f0 fs/open.c:63 vfs_truncate+0x54b/0x6d0 fs/open.c:109 do_sys_truncate fs/open.c:132 [inline] do_sys_truncate+0x145/0x170 fs/open.c:120 do_syscall_64+0xf9/0x620 arch/x86/entry/common.c:293 entry_SYSCALL_64_after_hwframe+0x49/0xbe other info that might help us debug this: Possible unsafe locking scenario: CPU0 CPU1 ---- ---- lock(&rl->lock); lock(&ni->mrec_lock); lock(&rl->lock); lock(&ni->mrec_lock); *** DEADLOCK *** 3 locks held by syz-executor.1/10126: #0: 0000000086b9b198 (sb_writers#31){.+.+}, at: sb_start_write include/linux/fs.h:1579 [inline] #0: 0000000086b9b198 (sb_writers#31){.+.+}, at: mnt_want_write+0x3a/0xb0 fs/namespace.c:360 #1: 00000000593d3ca4 (&sb->s_type->i_mutex_key#36){+.+.}, at: inode_lock include/linux/fs.h:748 [inline] #1: 00000000593d3ca4 (&sb->s_type->i_mutex_key#36){+.+.}, at: do_truncate+0x125/0x1f0 fs/open.c:61 #2: 00000000b447ee64 (&rl->lock){++++}, at: ntfs_truncate+0x1a2/0x2820 fs/ntfs/inode.c:2390 stack backtrace: CPU: 0 PID: 10126 Comm: syz-executor.1 Not tainted 4.19.211-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/11/2022 Call Trace: __dump_stack lib/dump_stack.c:77 [inline] dump_stack+0x1fc/0x2ef lib/dump_stack.c:118 print_circular_bug.constprop.0.cold+0x2d7/0x41e kernel/locking/lockdep.c:1222 check_prev_add kernel/locking/lockdep.c:1866 [inline] check_prevs_add kernel/locking/lockdep.c:1979 [inline] validate_chain kernel/locking/lockdep.c:2420 [inline] __lock_acquire+0x30c9/0x3ff0 kernel/locking/lockdep.c:3416 lock_acquire+0x170/0x3c0 kernel/locking/lockdep.c:3908 __mutex_lock_common kernel/locking/mutex.c:937 [inline] __mutex_lock+0xd7/0x1190 kernel/locking/mutex.c:1078 map_mft_record+0x3c/0xc70 fs/ntfs/mft.c:168 ntfs_truncate+0x202/0x2820 fs/ntfs/inode.c:2395 ntfs_truncate_vfs fs/ntfs/inode.c:2875 [inline] ntfs_setattr+0x1b6/0x620 fs/ntfs/inode.c:2925 notify_change+0x70b/0xfc0 fs/attr.c:334 do_truncate+0x134/0x1f0 fs/open.c:63 vfs_truncate+0x54b/0x6d0 fs/open.c:109 do_sys_truncate fs/open.c:132 [inline] do_sys_truncate+0x145/0x170 fs/open.c:120 do_syscall_64+0xf9/0x620 arch/x86/entry/common.c:293 entry_SYSCALL_64_after_hwframe+0x49/0xbe RIP: 0033:0x7f5feacb05a9 Code: ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 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 b8 ff ff ff f7 d8 64 89 01 48 RSP: 002b:00007f5fe9223168 EFLAGS: 00000246 ORIG_RAX: 000000000000004c RAX: ffffffffffffffda RBX: 00007f5feadd0f80 RCX: 00007f5feacb05a9 RDX: 0000000000000000 RSI: 0000000000f0ffff RDI: 0000000020000040 RBP: 00007f5fead0b7b0 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 R13: 00007ffd47f6f8af R14: 00007f5fe9223300 R15: 0000000000022000 ntfs: (device loop1): ntfs_cluster_alloc(): Failed to allocate clusters, aborting (error -28). ntfs: (device loop1): ntfs_attr_extend_allocation(): Cannot extend allocation of inode 0x44, attribute type 0x80, because the allocation of clusters failed with error code -28. BTRFS error (device loop5): unsupported checksum algorithm 1 BTRFS error (device loop5): superblock checksum mismatch BTRFS error (device loop5): open_ctree failed BTRFS error (device loop5): unsupported checksum algorithm 1 BTRFS error (device loop5): superblock checksum mismatch BTRFS error (device loop5): open_ctree failed 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd BTRFS error (device loop5): unsupported checksum algorithm 1 BTRFS error (device loop5): superblock checksum mismatch BTRFS error (device loop5): open_ctree failed BTRFS error (device loop5): unsupported checksum algorithm 1 BTRFS error (device loop5): superblock checksum mismatch BTRFS error (device loop5): open_ctree failed BTRFS error (device loop5): unsupported checksum algorithm 1 BTRFS error (device loop5): superblock checksum mismatch BTRFS error (device loop5): open_ctree failed BTRFS error (device loop5): unsupported checksum algorithm 1 BTRFS error (device loop5): superblock checksum mismatch BTRFS error (device loop5): open_ctree failed FS-Cache: Duplicate cookie detected FS-Cache: O-cookie c=000000000fbf3dfa [p=0000000061e8f972 fl=222 nc=0 na=1] FS-Cache: O-cookie d=00000000946c7a8b n=000000007a90c90c FS-Cache: O-key=[10] '34323935323536363131' FS-Cache: N-cookie c=00000000a333217b [p=0000000061e8f972 fl=2 nc=0 na=1] FS-Cache: N-cookie d=00000000946c7a8b n=0000000014a831de FS-Cache: N-key=[10] '34323935323536363131' FS-Cache: Duplicate cookie detected FS-Cache: O-cookie c=000000000fbf3dfa [p=0000000061e8f972 fl=222 nc=0 na=1] FS-Cache: O-cookie d=00000000946c7a8b n=000000007a90c90c FS-Cache: O-key=[10] '34323935323536363131' FS-Cache: N-cookie c=00000000b4f40a6a [p=0000000061e8f972 fl=2 nc=0 na=1] FS-Cache: N-cookie d=00000000946c7a8b n=0000000024100bc6 FS-Cache: N-key=[10] '34323935323536363131' BTRFS error (device loop5): unsupported checksum algorithm 1 BTRFS error (device loop5): superblock checksum mismatch BTRFS error (device loop5): open_ctree failed BTRFS error (device loop5): unsupported checksum algorithm 1 BTRFS error (device loop5): superblock checksum mismatch BTRFS error (device loop5): open_ctree failed FS-Cache: Duplicate cookie detected FS-Cache: O-cookie c=0000000063953e34 [p=0000000061e8f972 fl=222 nc=0 na=1] FS-Cache: O-cookie d=00000000946c7a8b n=000000003b062c38 FS-Cache: O-key=[10] '34323935323536363537' FS-Cache: N-cookie c=000000004120d03d [p=0000000061e8f972 fl=2 nc=0 na=1] FS-Cache: N-cookie d=00000000946c7a8b n=0000000028ab2fbb FS-Cache: N-key=[10] '34323935323536363537' BTRFS error (device loop5): unsupported checksum algorithm 1 BTRFS error (device loop5): superblock checksum mismatch BTRFS error (device loop5): open_ctree failed FS-Cache: Duplicate cookie detected FS-Cache: O-cookie c=00000000dedca2ac [p=0000000061e8f972 fl=222 nc=0 na=1] FS-Cache: O-cookie d=00000000946c7a8b n=000000009f52e390 FS-Cache: O-key=[10] '34323935323536363838' FS-Cache: N-cookie c=000000002ac4c6cb [p=0000000061e8f972 fl=2 nc=0 na=1] FS-Cache: N-cookie d=00000000946c7a8b n=000000004ca52559 FS-Cache: N-key=[10] '34323935323536363838' BTRFS error (device loop5): unsupported checksum algorithm 1 BTRFS error (device loop5): superblock checksum mismatch BTRFS error (device loop5): open_ctree failed BTRFS error (device loop5): unsupported checksum algorithm 1 BTRFS error (device loop5): superblock checksum mismatch BTRFS error (device loop5): open_ctree failed BTRFS error (device loop5): unsupported checksum algorithm 1 BTRFS error (device loop5): superblock checksum mismatch BTRFS error (device loop5): open_ctree failed FS-Cache: Duplicate cookie detected FS-Cache: O-cookie c=00000000f6c7c691 [p=0000000061e8f972 fl=222 nc=0 na=1] FS-Cache: O-cookie d=00000000946c7a8b n=00000000b48d467a FS-Cache: O-key=[10] '34323935323536373436' FS-Cache: N-cookie c=00000000fb83cd71 [p=0000000061e8f972 fl=2 nc=0 na=1] FS-Cache: N-cookie d=00000000946c7a8b n=00000000f733a7c2 FS-Cache: N-key=[10] '34323935323536373436' FS-Cache: Duplicate cookie detected FS-Cache: O-cookie c=00000000849c951b [p=0000000061e8f972 fl=222 nc=0 na=1] FS-Cache: O-cookie d=00000000946c7a8b n=0000000068e60b20 FS-Cache: O-key=[10] '34323935323536373636' FS-Cache: N-cookie c=00000000d23762f2 [p=0000000061e8f972 fl=2 nc=0 na=1] FS-Cache: N-cookie d=00000000946c7a8b n=00000000115af11a FS-Cache: N-key=[10] '34323935323536373636' BTRFS error (device loop5): unsupported checksum algorithm 1 BTRFS error (device loop5): superblock checksum mismatch BTRFS error (device loop5): open_ctree failed BTRFS error (device loop5): unsupported checksum algorithm 1 BTRFS error (device loop5): superblock checksum mismatch FS-Cache: Duplicate cookie detected FS-Cache: O-cookie c=0000000042f0667e [p=0000000061e8f972 fl=222 nc=0 na=1] FS-Cache: O-cookie d=00000000946c7a8b n=000000000dd69163 FS-Cache: O-key=[10] '34323935323536373933' FS-Cache: N-cookie c=00000000275a6f89 [p=0000000061e8f972 fl=2 nc=0 na=1] FS-Cache: N-cookie d=00000000946c7a8b n=00000000376e2bc1 FS-Cache: N-key=[10] '34323935323536373933' BTRFS error (device loop5): open_ctree failed FS-Cache: Duplicate cookie detected FS-Cache: O-cookie c=0000000047ff95f8 [p=0000000061e8f972 fl=222 nc=0 na=1] FS-Cache: O-cookie d=00000000946c7a8b n=00000000c88884b9 FS-Cache: O-key=[10] '34323935323536383037' FS-Cache: N-cookie c=00000000f84b31ab [p=0000000061e8f972 fl=2 nc=0 na=1] FS-Cache: N-cookie d=00000000946c7a8b n=00000000ae12f452 FS-Cache: N-key=[10] '34323935323536383037' BTRFS error (device loop5): unsupported checksum algorithm 1 BTRFS error (device loop5): superblock checksum mismatch BTRFS error (device loop5): open_ctree failed FS-Cache: Duplicate cookie detected FS-Cache: O-cookie c=00000000c556b830 [p=0000000061e8f972 fl=222 nc=0 na=1] FS-Cache: O-cookie d=00000000946c7a8b n=00000000bd95d466 FS-Cache: O-key=[10] '34323935323536383336' FS-Cache: N-cookie c=00000000ff8f3299 [p=0000000061e8f972 fl=2 nc=0 na=1] FS-Cache: N-cookie d=00000000946c7a8b n=0000000020b6d281 FS-Cache: N-key=[10] '34323935323536383336' BTRFS error (device loop5): unsupported checksum algorithm 1 FS-Cache: Duplicate cookie detected FS-Cache: O-cookie c=0000000005bbe2d2 [p=0000000061e8f972 fl=222 nc=0 na=1] FS-Cache: O-cookie d=00000000946c7a8b n=00000000f9f21799 FS-Cache: O-key=[10] '34323935323536383534' FS-Cache: N-cookie c=0000000053584e5d [p=0000000061e8f972 fl=2 nc=0 na=1] FS-Cache: N-cookie d=00000000946c7a8b n=00000000610a76d2 FS-Cache: N-key=[10] '34323935323536383534' FS-Cache: Duplicate cookie detected BTRFS error (device loop5): superblock checksum mismatch FS-Cache: O-cookie c=0000000005bbe2d2 [p=0000000061e8f972 fl=222 nc=0 na=1] FS-Cache: O-cookie d=00000000946c7a8b n=00000000f9f21799 BTRFS error (device loop5): open_ctree failed FS-Cache: O-key=[10] '34323935323536383534' FS-Cache: N-cookie c=00000000adf1db4c [p=0000000061e8f972 fl=2 nc=0 na=1] FS-Cache: N-cookie d=00000000946c7a8b n=00000000e5ad325b FS-Cache: N-key=[10] '34323935323536383534' BTRFS error (device loop5): unsupported checksum algorithm 1 BTRFS error (device loop5): superblock checksum mismatch FS-Cache: Duplicate cookie detected FS-Cache: O-cookie c=000000004f6c7484 [p=0000000061e8f972 fl=222 nc=0 na=1] FS-Cache: O-cookie d=00000000946c7a8b n=00000000074555df FS-Cache: O-key=[10] '34323935323536383939' FS-Cache: N-cookie c=000000001a8bb4fe [p=0000000061e8f972 fl=2 nc=0 na=1] FS-Cache: N-cookie d=00000000946c7a8b n=00000000b16f3a48 FS-Cache: N-key=[10] '34323935323536383939' BTRFS error (device loop5): open_ctree failed BTRFS error (device loop5): unsupported checksum algorithm 1 BTRFS error (device loop5): superblock checksum mismatch BTRFS error (device loop5): open_ctree failed BTRFS error (device loop5): unsupported checksum algorithm 1 BTRFS error (device loop5): superblock checksum mismatch BTRFS error (device loop5): open_ctree failed BTRFS error (device loop5): unsupported checksum algorithm 1 BTRFS error (device loop5): superblock checksum mismatch BTRFS error (device loop5): open_ctree failed 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd BTRFS error (device loop5): unsupported checksum algorithm 1 BTRFS error (device loop5): superblock checksum mismatch 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd BTRFS error (device loop5): open_ctree failed 9pnet: Insufficient options for proto=fd BTRFS error (device loop5): unsupported checksum algorithm 1 BTRFS error (device loop5): superblock checksum mismatch BTRFS error (device loop5): open_ctree failed FS-Cache: Duplicate cookie detected FS-Cache: O-cookie c=0000000008b051f8 [p=0000000061e8f972 fl=222 nc=0 na=1] FS-Cache: O-cookie d=00000000946c7a8b n=00000000b9b29478 FS-Cache: O-key=[10] '34323935323537303532' FS-Cache: N-cookie c=000000001fb6b068 [p=0000000061e8f972 fl=2 nc=0 na=1] FS-Cache: N-cookie d=00000000946c7a8b n=00000000052c42a8 FS-Cache: N-key=[10] '34323935323537303532' BTRFS error (device loop5): unsupported checksum algorithm 1 BTRFS error (device loop5): superblock checksum mismatch BTRFS error (device loop5): open_ctree failed FS-Cache: Duplicate cookie detected FS-Cache: O-cookie c=000000000686ec25 [p=0000000061e8f972 fl=222 nc=0 na=1] FS-Cache: O-cookie d=00000000946c7a8b n=00000000d3b8cc97 FS-Cache: O-key=[10] '34323935323537303732' FS-Cache: N-cookie c=00000000470c3291 [p=0000000061e8f972 fl=2 nc=0 na=1] FS-Cache: N-cookie d=00000000946c7a8b n=000000009836cedc FS-Cache: N-key=[10] '34323935323537303732' FS-Cache: Duplicate cookie detected FS-Cache: O-cookie c=000000003cfd355f [p=0000000061e8f972 fl=222 nc=0 na=1] FS-Cache: O-cookie d=00000000946c7a8b n=0000000030441c9e FS-Cache: O-key=[10] '34323935323537303839' FS-Cache: N-cookie c=00000000f4637a7e [p=0000000061e8f972 fl=2 nc=0 na=1] FS-Cache: N-cookie d=00000000946c7a8b n=0000000014f5ba9a FS-Cache: N-key=[10] '34323935323537303839' BTRFS error (device loop5): unsupported checksum algorithm 1 BTRFS error (device loop5): superblock checksum mismatch BTRFS error (device loop5): open_ctree failed BTRFS error (device loop5): unsupported checksum algorithm 1 BTRFS error (device loop5): superblock checksum mismatch BTRFS error (device loop5): open_ctree failed 9pnet: Insufficient options for proto=fd BTRFS error (device loop5): unsupported checksum algorithm 1 BTRFS error (device loop5): superblock checksum mismatch 9pnet: Insufficient options for proto=fd BTRFS error (device loop5): open_ctree failed 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd BTRFS error (device loop5): unsupported checksum algorithm 1 BTRFS error (device loop5): superblock checksum mismatch 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd BTRFS error (device loop5): open_ctree failed 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd 9pnet: Insufficient options for proto=fd BTRFS error (device loop5): unsupported checksum algorithm 1 9pnet: Insufficient options for proto=fd BTRFS error (device loop5): superblock checksum mismatch BTRFS error (device loop5): open_ctree failed BTRFS error (device loop5): unsupported checksum algorithm 1 BTRFS error (device loop5): superblock checksum mismatch BTRFS error (device loop5): open_ctree failed BTRFS error (device loop5): unsupported checksum algorithm 1 BTRFS error (device loop5): superblock checksum mismatch BTRFS error (device loop5): open_ctree failed BTRFS error (device loop5): unsupported checksum algorithm 1 BTRFS error (device loop5): superblock checksum mismatch