Warning: Permanently added '10.128.0.51' (ED25519) to the list of known hosts. executing program [ 53.288185][ T3500] loop0: detected capacity change from 0 to 4096 [ 53.414051][ T3500] ntfs: volume version 3.1. [ 53.571156][ T3500] syz-executor258 (3500): drop_caches: 1 [ 53.654135][ T3500] syz-executor258 (3500): drop_caches: 1 [ 53.678415][ T1235] [ 53.680783][ T1235] ====================================================== [ 53.687802][ T1235] WARNING: possible circular locking dependency detected [ 53.694810][ T1235] 5.15.156-syzkaller #0 Not tainted [ 53.700000][ T1235] ------------------------------------------------------ [ 53.707009][ T1235] kworker/u4:4/1235 is trying to acquire lock: [ 53.713158][ T1235] ffff888074220940 (&rl->lock){++++}-{3:3}, at: ntfs_readpage+0x123e/0x2210 [ 53.722324][ T1235] [ 53.722324][ T1235] but task is already holding lock: [ 53.729687][ T1235] ffff888074223310 (&ni->mrec_lock){+.+.}-{3:3}, at: map_mft_record+0x4a/0x850 [ 53.738653][ T1235] [ 53.738653][ T1235] which lock already depends on the new lock. [ 53.738653][ T1235] [ 53.749062][ T1235] [ 53.749062][ T1235] the existing dependency chain (in reverse order) is: [ 53.758072][ T1235] [ 53.758072][ T1235] -> #1 (&ni->mrec_lock){+.+.}-{3:3}: [ 53.765661][ T1235] lock_acquire+0x1db/0x4f0 [ 53.770786][ T1235] __mutex_lock_common+0x1da/0x25a0 [ 53.776509][ T1235] mutex_lock_nested+0x17/0x20 [ 53.781790][ T1235] map_mft_record+0x4a/0x850 [ 53.786896][ T1235] ntfs_truncate+0x263/0x2860 [ 53.792089][ T1235] ntfs_setattr+0x2c7/0x3a0 [ 53.797110][ T1235] notify_change+0xc6d/0xf50 [ 53.802219][ T1235] do_truncate+0x21c/0x300 [ 53.807152][ T1235] path_openat+0x28a3/0x2f20 [ 53.812527][ T1235] do_filp_open+0x21c/0x460 [ 53.817552][ T1235] do_sys_openat2+0x13b/0x500 [ 53.822772][ T1235] __x64_sys_openat+0x243/0x290 [ 53.828227][ T1235] do_syscall_64+0x3b/0xb0 [ 53.833281][ T1235] entry_SYSCALL_64_after_hwframe+0x66/0xd0 [ 53.839873][ T1235] [ 53.839873][ T1235] -> #0 (&rl->lock){++++}-{3:3}: [ 53.847014][ T1235] validate_chain+0x1649/0x5930 [ 53.852388][ T1235] __lock_acquire+0x1295/0x1ff0 [ 53.857751][ T1235] lock_acquire+0x1db/0x4f0 [ 53.862796][ T1235] down_read+0x45/0x2e0 [ 53.867489][ T1235] ntfs_readpage+0x123e/0x2210 [ 53.872779][ T1235] do_read_cache_page+0x752/0x1040 [ 53.878412][ T1235] ntfs_map_page+0x25/0x390 [ 53.883434][ T1235] ntfs_sync_mft_mirror+0x253/0x19e0 [ 53.889232][ T1235] write_mft_record_nolock+0x1164/0x16c0 [ 53.895380][ T1235] __ntfs_write_inode+0x7b4/0xdd0 [ 53.900936][ T1235] __writeback_single_inode+0x644/0xe30 [ 53.907115][ T1235] writeback_sb_inodes+0xbce/0x1a40 [ 53.912855][ T1235] wb_writeback+0x451/0xc50 [ 53.917900][ T1235] wb_workfn+0x46c/0x1130 [ 53.922762][ T1235] process_one_work+0x8a1/0x10c0 [ 53.928247][ T1235] worker_thread+0xaca/0x1280 [ 53.933471][ T1235] kthread+0x3f6/0x4f0 [ 53.938061][ T1235] ret_from_fork+0x1f/0x30 [ 53.943004][ T1235] [ 53.943004][ T1235] other info that might help us debug this: [ 53.943004][ T1235] [ 53.953244][ T1235] Possible unsafe locking scenario: [ 53.953244][ T1235] [ 53.960775][ T1235] CPU0 CPU1 [ 53.966133][ T1235] ---- ---- [ 53.971487][ T1235] lock(&ni->mrec_lock); [ 53.975820][ T1235] lock(&rl->lock); [ 53.982234][ T1235] lock(&ni->mrec_lock); [ 53.989078][ T1235] lock(&rl->lock); [ 53.992973][ T1235] [ 53.992973][ T1235] *** DEADLOCK *** [ 53.992973][ T1235] [ 54.001110][ T1235] 3 locks held by kworker/u4:4/1235: [ 54.006409][ T1235] #0: ffff8881437d7938 ((wq_completion)writeback){+.+.}-{0:0}, at: process_one_work+0x78a/0x10c0 [ 54.017113][ T1235] #1: ffffc9000508fd20 ((work_completion)(&(&wb->dwork)->work)){+.+.}-{0:0}, at: process_one_work+0x7d0/0x10c0 [ 54.028948][ T1235] #2: ffff888074223310 (&ni->mrec_lock){+.+.}-{3:3}, at: map_mft_record+0x4a/0x850 [ 54.038346][ T1235] [ 54.038346][ T1235] stack backtrace: [ 54.044235][ T1235] CPU: 0 PID: 1235 Comm: kworker/u4:4 Not tainted 5.15.156-syzkaller #0 [ 54.052573][ T1235] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/27/2024 [ 54.062715][ T1235] Workqueue: writeback wb_workfn (flush-7:0) [ 54.068711][ T1235] Call Trace: [ 54.072010][ T1235] [ 54.074938][ T1235] dump_stack_lvl+0x1e3/0x2d0 [ 54.079619][ T1235] ? io_uring_drop_tctx_refs+0x1a0/0x1a0 [ 54.085257][ T1235] ? print_circular_bug+0x12b/0x1a0 [ 54.090468][ T1235] check_noncircular+0x2f8/0x3b0 [ 54.095415][ T1235] ? add_chain_block+0x850/0x850 [ 54.100355][ T1235] ? lockdep_lock+0x11f/0x2a0 [ 54.105035][ T1235] ? preempt_count_add+0x8f/0x180 [ 54.110066][ T1235] validate_chain+0x1649/0x5930 [ 54.114920][ T1235] ? stack_trace_save+0x1c0/0x1c0 [ 54.119954][ T1235] ? stack_trace_save+0x113/0x1c0 [ 54.124982][ T1235] ? reacquire_held_locks+0x660/0x660 [ 54.130354][ T1235] ? stack_trace_snprint+0xe0/0xe0 [ 54.135474][ T1235] ? lockdep_lock+0x11f/0x2a0 [ 54.140157][ T1235] ? lockdep_unlock+0x166/0x300 [ 54.145013][ T1235] ? lockdep_lock+0x2a0/0x2a0 [ 54.149709][ T1235] ? mark_lock+0x29b/0x340 [ 54.154130][ T1235] __lock_acquire+0x1295/0x1ff0 [ 54.158997][ T1235] lock_acquire+0x1db/0x4f0 [ 54.163499][ T1235] ? ntfs_readpage+0x123e/0x2210 [ 54.168438][ T1235] ? read_lock_is_recursive+0x10/0x10 [ 54.173812][ T1235] ? __might_sleep+0xc0/0xc0 [ 54.178487][ T1235] ? _raw_read_unlock_irqrestore+0x8b/0x130 [ 54.184385][ T1235] ? lockdep_hardirqs_on+0x94/0x130 [ 54.189592][ T1235] ? _raw_read_unlock_irqrestore+0xd9/0x130 [ 54.195576][ T1235] ? _raw_read_unlock+0x40/0x40 [ 54.200430][ T1235] down_read+0x45/0x2e0 [ 54.204588][ T1235] ? ntfs_readpage+0x123e/0x2210 [ 54.209528][ T1235] ntfs_readpage+0x123e/0x2210 [ 54.214304][ T1235] ? ntfs_writepage+0x12c0/0x12c0 [ 54.219331][ T1235] ? submit_bio_noacct+0xa83/0xb30 [ 54.224448][ T1235] ? ntfs_writepage+0x12c0/0x12c0 [ 54.229474][ T1235] do_read_cache_page+0x752/0x1040 [ 54.234590][ T1235] ntfs_map_page+0x25/0x390 [ 54.239091][ T1235] ? ntfs_sync_mft_mirror+0x241/0x19e0 [ 54.244639][ T1235] ntfs_sync_mft_mirror+0x253/0x19e0 [ 54.249925][ T1235] ? __bio_add_page+0x30f/0x510 [ 54.254776][ T1235] ? bio_add_page+0x2b3/0x450 [ 54.259456][ T1235] ? submit_bio+0x2dd/0x560 [ 54.263960][ T1235] ? __mark_mft_record_dirty+0x170/0x170 [ 54.269597][ T1235] write_mft_record_nolock+0x1164/0x16c0 [ 54.275240][ T1235] ? ntfs_unmap_page+0x1e0/0x1e0 [ 54.280174][ T1235] ? slab_free_freelist_hook+0xdd/0x160 [ 54.285720][ T1235] ? kmem_cache_free+0x146/0x1f0 [ 54.290658][ T1235] __ntfs_write_inode+0x7b4/0xdd0 [ 54.295687][ T1235] __writeback_single_inode+0x644/0xe30 [ 54.301271][ T1235] writeback_sb_inodes+0xbce/0x1a40 [ 54.306552][ T1235] ? queue_io+0x560/0x560 [ 54.310894][ T1235] ? __writeback_inodes_wb+0x400/0x400 [ 54.316362][ T1235] ? queue_io+0x3d3/0x560 [ 54.320695][ T1235] wb_writeback+0x451/0xc50 [ 54.325209][ T1235] ? rcu_lock_release+0x20/0x20 [ 54.330062][ T1235] ? lockdep_hardirqs_on_prepare+0x438/0x7a0 [ 54.336148][ T1235] ? do_raw_spin_unlock+0x137/0x8b0 [ 54.341353][ T1235] wb_workfn+0x46c/0x1130 [ 54.345711][ T1235] ? mark_lock+0x98/0x340 [ 54.350047][ T1235] ? inode_wait_for_writeback+0x280/0x280 [ 54.355767][ T1235] ? read_lock_is_recursive+0x10/0x10 [ 54.361136][ T1235] ? lockdep_hardirqs_on_prepare+0x438/0x7a0 [ 54.367208][ T1235] ? print_irqtrace_events+0x210/0x210 [ 54.372750][ T1235] ? _raw_spin_unlock_irqrestore+0xd9/0x130 [ 54.378665][ T1235] ? do_raw_spin_unlock+0x137/0x8b0 [ 54.383868][ T1235] process_one_work+0x8a1/0x10c0 [ 54.388814][ T1235] ? worker_detach_from_pool+0x260/0x260 [ 54.394618][ T1235] ? _raw_spin_lock_irqsave+0x120/0x120 [ 54.400337][ T1235] ? kthread_data+0x4e/0xc0 [ 54.404836][ T1235] ? wq_worker_running+0x97/0x170 [ 54.409859][ T1235] worker_thread+0xaca/0x1280 [ 54.414539][ T1235] ? _raw_spin_unlock_irqrestore+0xd9/0x130 [ 54.420439][ T1235] kthread+0x3f6/0x4f0 [ 54.424591][ T1235] ? rcu_lock_release+0x20/0x20 [ 54.429523][ T1235] ? kthread_blkcg+0xd0/0xd0 [ 54.434260][ T1235] ret_from_fork+0x1f/0x30 [ 54.438678][ T1235]