Warning: Permanently added '10.128.0.146' (ED25519) to the list of known hosts. executing program [ 42.496791][ T3967] loop0: detected capacity change from 0 to 4096 [ 42.580952][ T3967] ntfs: (device loop0): parse_options(): Option utf8 is no longer supported, using option nls=utf8. Please use option nls=utf8 in the future and make sure utf8 is compiled either as a module or into the kernel. [ 42.598033][ T3967] ntfs: volume version 3.1. [ 42.702972][ T3967] syz-executor105 (3967): drop_caches: 1 [ 42.709272][ T9] [ 42.709914][ T9] ====================================================== [ 42.711728][ T9] WARNING: possible circular locking dependency detected [ 42.713621][ T9] 5.15.160-syzkaller #0 Not tainted [ 42.714996][ T9] ------------------------------------------------------ [ 42.716806][ T9] kworker/u4:0/9 is trying to acquire lock: [ 42.718295][ T9] ffff0000df108940 (&rl->lock){++++}-{3:3}, at: ntfs_readpage+0xf3c/0x1e04 [ 42.720620][ T9] [ 42.720620][ T9] but task is already holding lock: [ 42.722527][ T9] ffff0000df10b310 (&ni->mrec_lock){+.+.}-{3:3}, at: map_mft_record+0x6c/0x738 [ 42.724919][ T9] [ 42.724919][ T9] which lock already depends on the new lock. [ 42.724919][ T9] [ 42.727555][ T9] [ 42.727555][ T9] the existing dependency chain (in reverse order) is: [ 42.729954][ T9] [ 42.729954][ T9] -> #1 (&ni->mrec_lock){+.+.}-{3:3}: [ 42.731918][ T9] __mutex_lock_common+0x194/0x2154 [ 42.733430][ T9] mutex_lock_nested+0xa4/0xf8 [ 42.734843][ T9] map_mft_record+0x6c/0x738 [ 42.736192][ T9] ntfs_attr_extend_allocation+0x458/0x34b8 [ 42.737932][ T9] ntfs_file_write_iter+0x380/0x170c [ 42.739556][ T9] do_iter_readv_writev+0x420/0x5f8 [ 42.741155][ T9] do_iter_write+0x1b8/0x664 [ 42.742542][ T9] do_pwritev+0x1ec/0x334 [ 42.743884][ T9] __arm64_sys_pwritev2+0xd4/0x108 [ 42.745436][ T9] invoke_syscall+0x98/0x2b8 [ 42.746853][ T9] el0_svc_common+0x138/0x258 [ 42.748335][ T9] do_el0_svc+0x58/0x14c [ 42.749652][ T9] el0_svc+0x7c/0x1f0 [ 42.750868][ T9] el0t_64_sync_handler+0x84/0xe4 [ 42.752334][ T9] el0t_64_sync+0x1a0/0x1a4 [ 42.753710][ T9] [ 42.753710][ T9] -> #0 (&rl->lock){++++}-{3:3}: [ 42.755718][ T9] __lock_acquire+0x32d4/0x7638 [ 42.757204][ T9] lock_acquire+0x240/0x77c [ 42.758537][ T9] down_read+0xc0/0x398 [ 42.759820][ T9] ntfs_readpage+0xf3c/0x1e04 [ 42.761187][ T9] do_read_cache_page+0x60c/0x950 [ 42.762651][ T9] read_cache_page+0x68/0x84 [ 42.764094][ T9] ntfs_sync_mft_mirror+0x1e4/0x18f0 [ 42.765693][ T9] write_mft_record_nolock+0x104c/0x16ec [ 42.767359][ T9] __ntfs_write_inode+0x720/0xdc8 [ 42.768892][ T9] ntfs_write_inode+0x68/0x90 [ 42.770297][ T9] __writeback_single_inode+0x584/0x13a4 [ 42.772092][ T9] writeback_sb_inodes+0x94c/0x1654 [ 42.773637][ T9] wb_writeback+0x3fc/0xfc8 [ 42.774991][ T9] wb_workfn+0x3a4/0x1070 [ 42.776302][ T9] process_one_work+0x790/0x11b8 [ 42.777736][ T9] worker_thread+0x910/0x1034 [ 42.779158][ T9] kthread+0x37c/0x45c [ 42.780458][ T9] ret_from_fork+0x10/0x20 [ 42.781866][ T9] [ 42.781866][ T9] other info that might help us debug this: [ 42.781866][ T9] [ 42.784463][ T9] Possible unsafe locking scenario: [ 42.784463][ T9] [ 42.786263][ T9] CPU0 CPU1 [ 42.787592][ T9] ---- ---- [ 42.789047][ T9] lock(&ni->mrec_lock); [ 42.790292][ T9] lock(&rl->lock); [ 42.791910][ T9] lock(&ni->mrec_lock); [ 42.793582][ T9] lock(&rl->lock); [ 42.794638][ T9] [ 42.794638][ T9] *** DEADLOCK *** [ 42.794638][ T9] [ 42.796797][ T9] 3 locks held by kworker/u4:0/9: [ 42.798093][ T9] #0: ffff0000c21c8138 ((wq_completion)writeback){+.+.}-{0:0}, at: process_one_work+0x66c/0x11b8 [ 42.801036][ T9] #1: ffff800018967c00 ((work_completion)(&(&wb->dwork)->work)){+.+.}-{0:0}, at: process_one_work+0x6ac/0x11b8 [ 42.804170][ T9] #2: ffff0000df10b310 (&ni->mrec_lock){+.+.}-{3:3}, at: map_mft_record+0x6c/0x738 [ 42.806714][ T9] [ 42.806714][ T9] stack backtrace: [ 42.808253][ T9] CPU: 1 PID: 9 Comm: kworker/u4:0 Not tainted 5.15.160-syzkaller #0 [ 42.810450][ T9] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 04/02/2024 [ 42.813155][ T9] Workqueue: writeback wb_workfn (flush-7:0) [ 42.814816][ T9] Call trace: [ 42.815656][ T9] dump_backtrace+0x0/0x530 [ 42.816903][ T9] show_stack+0x2c/0x3c [ 42.818047][ T9] dump_stack_lvl+0x108/0x170 [ 42.819280][ T9] dump_stack+0x1c/0x58 [ 42.820416][ T9] print_circular_bug+0x150/0x1b8 [ 42.821799][ T9] check_noncircular+0x2cc/0x378 [ 42.823106][ T9] __lock_acquire+0x32d4/0x7638 [ 42.824441][ T9] lock_acquire+0x240/0x77c [ 42.825561][ T9] down_read+0xc0/0x398 [ 42.826791][ T9] ntfs_readpage+0xf3c/0x1e04 [ 42.828101][ T9] do_read_cache_page+0x60c/0x950 [ 42.829494][ T9] read_cache_page+0x68/0x84 [ 42.830797][ T9] ntfs_sync_mft_mirror+0x1e4/0x18f0 [ 42.832190][ T9] write_mft_record_nolock+0x104c/0x16ec [ 42.833801][ T9] __ntfs_write_inode+0x720/0xdc8 [ 42.835159][ T9] ntfs_write_inode+0x68/0x90 [ 42.836350][ T9] __writeback_single_inode+0x584/0x13a4 [ 42.837836][ T9] writeback_sb_inodes+0x94c/0x1654 [ 42.839268][ T9] wb_writeback+0x3fc/0xfc8 [ 42.840415][ T9] wb_workfn+0x3a4/0x1070 [ 42.841579][ T9] process_one_work+0x790/0x11b8 [ 42.842952][ T9] worker_thread+0x910/0x1034 [ 42.844160][ T9] kthread+0x37c/0x45c [ 42.845190][ T9] ret_from_fork+0x10/0x20