Warning: Permanently added '10.128.0.97' (ECDSA) to the list of known hosts. syzkaller login: [ 30.670390] IPVS: ftp: loaded support on port[0] = 21 executing program [ 30.789672] ntfs: volume version 3.1. [ 30.865169] syz-executor110 (7999): drop_caches: 1 [ 30.898645] syz-executor110 (7999): drop_caches: 1 [ 30.906571] [ 30.908202] ====================================================== [ 30.914517] WARNING: possible circular locking dependency detected [ 30.920811] 4.14.294-syzkaller #0 Not tainted [ 30.925295] ------------------------------------------------------ [ 30.931588] kworker/u4:4/2880 is trying to acquire lock: [ 30.937008] (&rl->lock){++++}, at: [] ntfs_readpage+0x1396/0x1ad0 [ 30.944878] [ 30.944878] but task is already holding lock: [ 30.950823] (&ni->mrec_lock){+.+.}, at: [] map_mft_record+0x2b/0xbe0 [ 30.958954] [ 30.958954] which lock already depends on the new lock. [ 30.958954] [ 30.967251] [ 30.967251] the existing dependency chain (in reverse order) is: [ 30.974861] [ 30.974861] -> #1 (&ni->mrec_lock){+.+.}: [ 30.980481] __mutex_lock+0xc4/0x1310 [ 30.984780] map_mft_record+0x2b/0xbe0 [ 30.989168] ntfs_map_runlist_nolock+0xab3/0x1630 [ 30.994527] ntfs_map_runlist+0x64/0x90 [ 30.999003] ntfs_readpage+0x13e8/0x1ad0 [ 31.003563] __do_page_cache_readahead+0x69b/0x940 [ 31.008989] ondemand_readahead.isra.0+0x514/0xb60 [ 31.014417] page_cache_sync_readahead+0xa6/0xf0 [ 31.019670] generic_file_read_iter+0xfbc/0x21c0 [ 31.024921] __vfs_read+0x449/0x620 [ 31.029048] integrity_kernel_read+0x11b/0x1b0 [ 31.034123] ima_calc_file_hash+0x3ee/0x780 [ 31.038956] ima_collect_measurement+0x39d/0x430 [ 31.044224] process_measurement+0x78b/0xb20 [ 31.049129] path_openat+0x10ad/0x2970 [ 31.053513] do_filp_open+0x179/0x3c0 [ 31.057918] do_sys_open+0x296/0x410 [ 31.062134] do_syscall_64+0x1d5/0x640 [ 31.066527] entry_SYSCALL_64_after_hwframe+0x46/0xbb [ 31.072217] [ 31.072217] -> #0 (&rl->lock){++++}: [ 31.077398] lock_acquire+0x170/0x3f0 [ 31.081701] down_read+0x36/0x80 [ 31.085572] ntfs_readpage+0x1396/0x1ad0 [ 31.090131] do_read_cache_page+0x38e/0xc10 [ 31.094953] ntfs_sync_mft_mirror+0x1f4/0x1560 [ 31.100048] write_mft_record_nolock+0xece/0x1240 [ 31.105403] __ntfs_write_inode+0x58d/0xcc0 [ 31.110220] __writeback_single_inode+0x6a4/0x1010 [ 31.115651] writeback_sb_inodes+0x48b/0xd30 [ 31.120562] wb_writeback+0x243/0xb80 [ 31.124862] wb_workfn+0x2bd/0xf50 [ 31.128900] process_one_work+0x793/0x14a0 [ 31.133630] worker_thread+0x5cc/0xff0 [ 31.138013] kthread+0x30d/0x420 [ 31.141877] ret_from_fork+0x24/0x30 [ 31.146080] [ 31.146080] other info that might help us debug this: [ 31.146080] [ 31.154196] Possible unsafe locking scenario: [ 31.154196] [ 31.160649] CPU0 CPU1 [ 31.165305] ---- ---- [ 31.169944] lock(&ni->mrec_lock); [ 31.173548] lock(&rl->lock); [ 31.179234] lock(&ni->mrec_lock); [ 31.185352] lock(&rl->lock); [ 31.188519] [ 31.188519] *** DEADLOCK *** [ 31.188519] [ 31.194565] 3 locks held by kworker/u4:4/2880: [ 31.199118] #0: ("writeback"){+.+.}, at: [] process_one_work+0x6b0/0x14a0 [ 31.207773] #1: ((&(&wb->dwork)->work)){+.+.}, at: [] process_one_work+0x6e6/0x14a0 [ 31.217287] #2: (&ni->mrec_lock){+.+.}, at: [] map_mft_record+0x2b/0xbe0 [ 31.225849] [ 31.225849] stack backtrace: [ 31.230322] CPU: 0 PID: 2880 Comm: kworker/u4:4 Not tainted 4.14.294-syzkaller #0 [ 31.237917] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 08/26/2022 [ 31.247254] Workqueue: writeback wb_workfn (flush-7:0) [ 31.252507] Call Trace: [ 31.255076] dump_stack+0x1b2/0x281 [ 31.258682] print_circular_bug.constprop.0.cold+0x2d7/0x41e [ 31.264457] __lock_acquire+0x2e0e/0x3f20 [ 31.268604] ? trace_hardirqs_on+0x10/0x10 [ 31.272815] ? radix_tree_node_alloc.constprop.0+0x1b0/0x2f0 [ 31.278597] ? alloc_buffer_head+0x20/0x110 [ 31.282896] ? rcu_lockdep_current_cpu_online+0xed/0x140 [ 31.288326] ? ntfs_readpage+0xba8/0x1ad0 [ 31.292449] lock_acquire+0x170/0x3f0 [ 31.296226] ? ntfs_readpage+0x1396/0x1ad0 [ 31.300436] down_read+0x36/0x80 [ 31.303798] ? ntfs_readpage+0x1396/0x1ad0 [ 31.308009] ntfs_readpage+0x1396/0x1ad0 [ 31.312064] ? __lru_cache_add+0x178/0x250 [ 31.316274] ? ntfs_end_buffer_async_read+0x10a0/0x10a0 [ 31.321618] ? add_to_page_cache_lru+0x136/0x2b0 [ 31.326350] ? add_to_page_cache_locked+0x40/0x40 [ 31.331186] ? alloc_pages_current+0x15d/0x260 [ 31.335744] do_read_cache_page+0x38e/0xc10 [ 31.340041] ? ntfs_end_buffer_async_read+0x10a0/0x10a0 [ 31.345383] ntfs_sync_mft_mirror+0x1f4/0x1560 [ 31.349940] ? ntfs_sync_mft_mirror+0x2b/0x1560 [ 31.354600] ? generic_make_request+0x850/0x850 [ 31.359244] ? guard_bio_eod+0x1ba/0x520 [ 31.363282] write_mft_record_nolock+0xece/0x1240 [ 31.368103] __ntfs_write_inode+0x58d/0xcc0 [ 31.372405] ? rcu_lockdep_current_cpu_online+0xed/0x140 [ 31.377836] __writeback_single_inode+0x6a4/0x1010 [ 31.382741] writeback_sb_inodes+0x48b/0xd30 [ 31.387128] ? wbc_detach_inode+0x780/0x780 [ 31.391428] ? queue_io+0x400/0x5a0 [ 31.395031] ? rcu_lockdep_current_cpu_online+0xed/0x140 [ 31.400458] wb_writeback+0x243/0xb80 [ 31.404238] ? writeback_inodes_wb.constprop.0+0x1a0/0x1a0 [ 31.409856] ? rcu_lockdep_current_cpu_online+0xed/0x140 [ 31.415290] wb_workfn+0x2bd/0xf50 [ 31.418808] ? process_one_work+0x6c4/0x14a0 [ 31.423197] ? inode_wait_for_writeback+0x30/0x30 [ 31.428017] ? lock_acquire+0x170/0x3f0 [ 31.431968] ? rcu_lockdep_current_cpu_online+0xed/0x140 [ 31.437399] process_one_work+0x793/0x14a0 [ 31.441613] ? work_busy+0x320/0x320 [ 31.445321] ? worker_thread+0x158/0xff0 [ 31.449361] ? _raw_spin_unlock_irq+0x24/0x80 [ 31.453836] worker_thread+0x5cc/0xff0 [ 31.457714] ? rescuer_thread+0xc80/0xc80 [ 31.461839] kthread+0x30d/0x420 [ 31.465180] ? kthread_create_on_node+0xd0/0xd0 [ 31.469830] ret_from_fork+0x24/0x30