Hello,
syzbot has tested the proposed patch but the reproducer is still triggering an issue:
INFO: task hung in truncate_inode_pages_final
INFO: task syz-executor.4:8098 blocked for more than 143 seconds.
Not tainted 6.5.0-rc7-syzkaller #0
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
task:syz-executor.4 state:D stack:0 pid:8098 ppid:6357 flags:0x0000000d
Call trace:
__switch_to+0x320/0x754 arch/arm64/kernel/process.c:556
context_switch kernel/sched/core.c:5381 [inline]
__schedule+0x1364/0x23b4 kernel/sched/core.c:6710
schedule+0xc4/0x170 kernel/sched/core.c:6786
io_schedule+0x8c/0x12c kernel/sched/core.c:9028
folio_wait_bit_common+0x65c/0xb90 mm/filemap.c:1304
__folio_lock mm/filemap.c:1632 [inline]
folio_lock include/linux/pagemap.h:959 [inline]
__filemap_get_folio+0x1e4/0x964 mm/filemap.c:1899
truncate_inode_pages_range+0x444/0xf74 mm/truncate.c:377
truncate_inode_pages mm/truncate.c:449 [inline]
truncate_inode_pages_final+0x90/0xc0 mm/truncate.c:484
ntfs_evict_inode+0x20/0x48 fs/ntfs3/inode.c:1790
evict+0x260/0x68c fs/inode.c:664
iput_final fs/inode.c:1788 [inline]
iput+0x734/0x818 fs/inode.c:1814
ntfs_fill_super+0x3648/0x3f90 fs/ntfs3/super.c:1420
get_tree_bdev+0x378/0x570 fs/super.c:1318
ntfs_fs_get_tree+0x28/0x38 fs/ntfs3/super.c:1647
vfs_get_tree+0x90/0x274 fs/super.c:1519
do_new_mount+0x25c/0x8c8 fs/namespace.c:3335
path_mount+0x590/0xe04 fs/namespace.c:3662
do_mount fs/namespace.c:3675 [inline]
__do_sys_mount fs/namespace.c:3884 [inline]
__se_sys_mount fs/namespace.c:3861 [inline]
__arm64_sys_mount+0x45c/0x594 fs/namespace.c:3861
__invoke_syscall arch/arm64/kernel/syscall.c:38 [inline]
invoke_syscall+0x98/0x2c0 arch/arm64/kernel/syscall.c:52
el0_svc_common+0x138/0x244 arch/arm64/kernel/syscall.c:139
do_el0_svc+0x64/0x198 arch/arm64/kernel/syscall.c:188
el0_svc+0x4c/0x160 arch/arm64/kernel/entry-common.c:647
el0t_64_sync_handler+0x84/0xfc arch/arm64/kernel/entry-common.c:665
el0t_64_sync+0x190/0x194 arch/arm64/kernel/entry.S:591
Showing all locks held in the system:
1 lock held by rcu_tasks_kthre/13:
#0: ffff80008e271850 (rcu_tasks.tasks_gp_mutex){+.+.}-{3:3}, at: rcu_tasks_one_gp+0x44/0xcf4 kernel/rcu/tasks.h:522
1 lock held by rcu_tasks_trace/14:
#0: ffff80008e271c10 (rcu_tasks_trace.tasks_gp_mutex){+.+.}-{3:3}, at: rcu_tasks_one_gp+0x44/0xcf4 kernel/rcu/tasks.h:522
1 lock held by khungtaskd/28:
#0: ffff80008e271680 (rcu_read_lock){....}-{1:2}, at: rcu_lock_acquire+0xc/0x44 include/linux/rcupdate.h:302
2 locks held by udevd/5608:
2 locks held by getty/5745:
#0: ffff0000cf08d098 (&tty->ldisc_sem){++++}-{0:0}, at: ldsem_down_read+0x3c/0x4c drivers/tty/tty_ldsem.c:340
#1: ffff800093ffd2f0 (&ldata->atomic_read_lock){+.+.}-{3:3}, at: n_tty_read+0x414/0x1214 drivers/tty/n_tty.c:2187
1 lock held by syz-executor.2/6351:
#0: ffff80008e276cb8 (rcu_state.exp_mutex){+.+.}-{3:3}, at: exp_funnel_lock kernel/rcu/tree_exp.h:325 [inline]
#0: ffff80008e276cb8 (rcu_state.exp_mutex){+.+.}-{3:3}, at: synchronize_rcu_expedited+0x37c/0x728 kernel/rcu/tree_exp.h:992
1 lock held by syz-executor.5/6361:
#0: ffff80008e276cb8 (rcu_state.exp_mutex){+.+.}-{3:3}, at: exp_funnel_lock kernel/rcu/tree_exp.h:293 [inline]
#0: ffff80008e276cb8 (rcu_state.exp_mutex){+.+.}-{3:3}, at: synchronize_rcu_expedited+0x3ac/0x728 kernel/rcu/tree_exp.h:992
1 lock held by syz-executor.4/8098:
#0: ffff0000dc47e0e0 (&type->s_umount_key#49/1){+.+.}-{3:3}, at: alloc_super+0x1b4/0x80c fs/super.c:228
1 lock held by syz-executor.3/11738:
3 locks held by syz-executor.1/11741:
2 locks held by syz-executor.4/11743:
2 locks held by syz-executor.0/11744:
console output:
https://syzkaller.appspot.com/x/log.txt?x=1635a450680000
Note: no patches were applied.