Warning: Permanently added '10.128.10.43' (ED25519) to the list of known hosts. executing program syzkaller login: [ 37.212272][ T4228] loop0: detected capacity change from 0 to 4096 [ 37.216084][ T4228] 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. [ 37.231110][ T4228] ntfs: volume version 3.1. [ 37.763221][ T4228] syz-executor164 (4228): drop_caches: 3 [ 37.874086][ T4228] syz-executor164 (4228): drop_caches: 3 [ 37.890161][ T180] [ 37.890788][ T180] ====================================================== [ 37.892530][ T180] WARNING: possible circular locking dependency detected [ 37.894403][ T180] 6.1.79-syzkaller #0 Not tainted [ 37.895694][ T180] ------------------------------------------------------ [ 37.897685][ T180] kworker/u4:3/180 is trying to acquire lock: [ 37.899328][ T180] ffff0000e24e0940 (&rl->lock){++++}-{3:3}, at: ntfs_read_folio+0xf40/0x1d70 [ 37.901771][ T180] [ 37.901771][ T180] but task is already holding lock: [ 37.903785][ T180] ffff0000e24e3310 (&ni->mrec_lock){+.+.}-{3:3}, at: map_mft_record+0x64/0x7b4 [ 37.906261][ T180] [ 37.906261][ T180] which lock already depends on the new lock. [ 37.906261][ T180] [ 37.909143][ T180] [ 37.909143][ T180] the existing dependency chain (in reverse order) is: [ 37.911617][ T180] [ 37.911617][ T180] -> #1 (&ni->mrec_lock){+.+.}-{3:3}: [ 37.913727][ T180] __mutex_lock_common+0x190/0x21a0 [ 37.915323][ T180] mutex_lock_nested+0x38/0x44 [ 37.916719][ T180] map_mft_record+0x64/0x7b4 [ 37.918101][ T180] ntfs_attr_extend_allocation+0x458/0x3470 [ 37.919828][ T180] ntfs_file_write_iter+0x2c8/0x17b0 [ 37.921454][ T180] do_iter_write+0x534/0x964 [ 37.922851][ T180] do_pwritev+0x1ec/0x334 [ 37.924222][ T180] __arm64_sys_pwritev+0xa0/0xb8 [ 37.925708][ T180] invoke_syscall+0x98/0x2c0 [ 37.927115][ T180] el0_svc_common+0x138/0x258 [ 37.928599][ T180] do_el0_svc+0x64/0x218 [ 37.929946][ T180] el0_svc+0x58/0x168 [ 37.931139][ T180] el0t_64_sync_handler+0x84/0xf0 [ 37.932671][ T180] el0t_64_sync+0x18c/0x190 [ 37.934034][ T180] [ 37.934034][ T180] -> #0 (&rl->lock){++++}-{3:3}: [ 37.936013][ T180] __lock_acquire+0x3338/0x7680 [ 37.937487][ T180] lock_acquire+0x26c/0x7cc [ 37.938846][ T180] down_read+0x64/0x308 [ 37.940097][ T180] ntfs_read_folio+0xf40/0x1d70 [ 37.941553][ T180] filemap_read_folio+0x14c/0x39c [ 37.943058][ T180] do_read_cache_folio+0x24c/0x544 [ 37.944563][ T180] read_cache_page+0x6c/0x180 [ 37.945989][ T180] ntfs_sync_mft_mirror+0x1cc/0x1890 [ 37.947591][ T180] write_mft_record_nolock+0x100c/0x1630 [ 37.949301][ T180] write_mft_record+0x144/0x1bc [ 37.950821][ T180] __ntfs_write_inode+0x5cc/0xa78 [ 37.952364][ T180] ntfs_write_inode+0x68/0x90 [ 37.953820][ T180] __writeback_single_inode+0x614/0x1770 [ 37.955581][ T180] writeback_sb_inodes+0x978/0x1718 [ 37.957135][ T180] wb_writeback+0x414/0x1130 [ 37.958516][ T180] wb_workfn+0x3a8/0x1034 [ 37.959865][ T180] process_one_work+0x7ac/0x1404 [ 37.961358][ T180] worker_thread+0x8e4/0xfec [ 37.962730][ T180] kthread+0x250/0x2d8 [ 37.963961][ T180] ret_from_fork+0x10/0x20 [ 37.965380][ T180] [ 37.965380][ T180] other info that might help us debug this: [ 37.965380][ T180] [ 37.968086][ T180] Possible unsafe locking scenario: [ 37.968086][ T180] [ 37.970059][ T180] CPU0 CPU1 [ 37.971576][ T180] ---- ---- [ 37.973075][ T180] lock(&ni->mrec_lock); [ 37.974261][ T180] lock(&rl->lock); [ 37.976018][ T180] lock(&ni->mrec_lock); [ 37.977825][ T180] lock(&rl->lock); [ 37.978921][ T180] [ 37.978921][ T180] *** DEADLOCK *** [ 37.978921][ T180] [ 37.981142][ T180] 3 locks held by kworker/u4:3/180: [ 37.982518][ T180] #0: ffff0000c2e45938 ((wq_completion)writeback){+.+.}-{0:0}, at: process_one_work+0x664/0x1404 [ 37.985455][ T180] #1: ffff80001ddc7c20 ((work_completion)(&(&wb->dwork)->work)){+.+.}-{0:0}, at: process_one_work+0x6a8/0x1404 [ 37.988625][ T180] #2: ffff0000e24e3310 (&ni->mrec_lock){+.+.}-{3:3}, at: map_mft_record+0x64/0x7b4 [ 37.991217][ T180] [ 37.991217][ T180] stack backtrace: [ 37.992783][ T180] CPU: 1 PID: 180 Comm: kworker/u4:3 Not tainted 6.1.79-syzkaller #0 [ 37.995028][ T180] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/25/2024 [ 37.997740][ T180] Workqueue: writeback wb_workfn (flush-7:0) [ 37.999358][ T180] Call trace: [ 38.000206][ T180] dump_backtrace+0x1c8/0x1f4 [ 38.001518][ T180] show_stack+0x2c/0x3c [ 38.002627][ T180] dump_stack_lvl+0x108/0x170 [ 38.003894][ T180] dump_stack+0x1c/0x58 [ 38.005036][ T180] print_circular_bug+0x150/0x1b8 [ 38.006436][ T180] check_noncircular+0x2cc/0x378 [ 38.007806][ T180] __lock_acquire+0x3338/0x7680 [ 38.009138][ T180] lock_acquire+0x26c/0x7cc [ 38.010355][ T180] down_read+0x64/0x308 [ 38.011529][ T180] ntfs_read_folio+0xf40/0x1d70 [ 38.012805][ T180] filemap_read_folio+0x14c/0x39c [ 38.014154][ T180] do_read_cache_folio+0x24c/0x544 [ 38.015550][ T180] read_cache_page+0x6c/0x180 [ 38.016883][ T180] ntfs_sync_mft_mirror+0x1cc/0x1890 [ 38.018351][ T180] write_mft_record_nolock+0x100c/0x1630 [ 38.019879][ T180] write_mft_record+0x144/0x1bc [ 38.021223][ T180] __ntfs_write_inode+0x5cc/0xa78 [ 38.022577][ T180] ntfs_write_inode+0x68/0x90 [ 38.023900][ T180] __writeback_single_inode+0x614/0x1770 [ 38.025463][ T180] writeback_sb_inodes+0x978/0x1718 [ 38.026894][ T180] wb_writeback+0x414/0x1130 [ 38.028183][ T180] wb_workfn+0x3a8/0x1034 [ 38.029327][ T180] process_one_work+0x7ac/0x1404 [ 38.030663][ T180] worker_thread+0x8e4/0xfec [ 38.031945][ T180] kthread+0x250/0x2d8 [ 38.033067][ T180] ret_from_fork+0x10/0x20