[v6.1] INFO: task hung in ntfs_read_folio

0 views
Skip to first unread message

syzbot

unread,
Dec 31, 2023, 5:51:26 PM12/31/23
to syzkaller...@googlegroups.com
Hello,

syzbot found the following issue on:

HEAD commit: 4aa6747d9352 Linux 6.1.69
git tree: linux-6.1.y
console output: https://syzkaller.appspot.com/x/log.txt?x=10ea349ae80000
kernel config: https://syzkaller.appspot.com/x/.config?x=e3efadc69a1b0490
dashboard link: https://syzkaller.appspot.com/bug?extid=8938355c70e18deb1c52
compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40
userspace arch: arm64
syz repro: https://syzkaller.appspot.com/x/repro.syz?x=176256b1e80000
C reproducer: https://syzkaller.appspot.com/x/repro.c?x=126ca4ade80000

Downloadable assets:
disk image: https://storage.googleapis.com/syzbot-assets/31c5d5a5223e/disk-4aa6747d.raw.xz
vmlinux: https://storage.googleapis.com/syzbot-assets/85c4938c28c7/vmlinux-4aa6747d.xz
kernel image: https://storage.googleapis.com/syzbot-assets/0fcb53eb57be/Image-4aa6747d.gz.xz
mounted in repro: https://storage.googleapis.com/syzbot-assets/4898959d812d/mount_0.gz

IMPORTANT: if you fix the issue, please add the following tag to the commit:
Reported-by: syzbot+893835...@syzkaller.appspotmail.com

INFO: task syz-executor297:6126 blocked for more than 143 seconds.
Not tainted 6.1.69-syzkaller #0
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
task:syz-executor297 state:D stack:0 pid:6126 ppid:4289 flags:0x00000005
Call trace:
__switch_to+0x320/0x754 arch/arm64/kernel/process.c:553
context_switch kernel/sched/core.c:5245 [inline]
__schedule+0xee4/0x1c98 kernel/sched/core.c:6558
schedule+0xc4/0x170 kernel/sched/core.c:6634
schedule_preempt_disabled+0x18/0x2c kernel/sched/core.c:6693
__mutex_lock_common+0xbd8/0x21a0 kernel/locking/mutex.c:679
__mutex_lock kernel/locking/mutex.c:747 [inline]
mutex_lock_nested+0x38/0x44 kernel/locking/mutex.c:799
ni_lock fs/ntfs3/ntfs_fs.h:1111 [inline]
ntfs_read_folio+0x140/0x1c0 fs/ntfs3/inode.c:722
filemap_read_folio+0x14c/0x39c mm/filemap.c:2461
filemap_fault+0xa58/0xf7c mm/filemap.c:3275
__do_fault+0x11c/0x3d8 mm/memory.c:4241
do_read_fault mm/memory.c:4592 [inline]
do_fault mm/memory.c:4721 [inline]
handle_pte_fault mm/memory.c:4993 [inline]
__handle_mm_fault mm/memory.c:5135 [inline]
handle_mm_fault+0x1f90/0x3ef0 mm/memory.c:5256
__do_page_fault arch/arm64/mm/fault.c:499 [inline]
do_page_fault+0x330/0x890 arch/arm64/mm/fault.c:583
do_translation_fault+0x94/0xc8 arch/arm64/mm/fault.c:667
do_mem_abort+0x74/0x200 arch/arm64/mm/fault.c:803
el0_da+0x70/0x184 arch/arm64/kernel/entry-common.c:515
el0t_64_sync_handler+0xcc/0xf0 arch/arm64/kernel/entry-common.c:658
el0t_64_sync+0x18c/0x190 arch/arm64/kernel/entry.S:585
INFO: task syz-executor297:6127 blocked for more than 143 seconds.
Not tainted 6.1.69-syzkaller #0
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
task:syz-executor297 state:D stack:0 pid:6127 ppid:4289 flags:0x00000005
Call trace:
__switch_to+0x320/0x754 arch/arm64/kernel/process.c:553
context_switch kernel/sched/core.c:5245 [inline]
__schedule+0xee4/0x1c98 kernel/sched/core.c:6558
schedule+0xc4/0x170 kernel/sched/core.c:6634
io_schedule+0x8c/0x188 kernel/sched/core.c:8786
folio_wait_bit_common+0x65c/0xb90 mm/filemap.c:1296
__folio_lock mm/filemap.c:1659 [inline]
folio_lock include/linux/pagemap.h:941 [inline]
__filemap_get_folio+0x5ac/0xb6c mm/filemap.c:1931
pagecache_get_page+0x3c/0x16c mm/folio-compat.c:110
find_or_create_page include/linux/pagemap.h:613 [inline]
ni_readpage_cmpr+0x2a4/0x7b8 fs/ntfs3/frecord.c:2136
ntfs_read_folio+0x14c/0x1c0 fs/ntfs3/inode.c:723
filemap_read_folio+0x14c/0x39c mm/filemap.c:2461
filemap_fault+0xa58/0xf7c mm/filemap.c:3275
__do_fault+0x11c/0x3d8 mm/memory.c:4241
do_read_fault mm/memory.c:4592 [inline]
do_fault mm/memory.c:4721 [inline]
handle_pte_fault mm/memory.c:4993 [inline]
__handle_mm_fault mm/memory.c:5135 [inline]
handle_mm_fault+0x1f90/0x3ef0 mm/memory.c:5256
__do_page_fault arch/arm64/mm/fault.c:499 [inline]
do_page_fault+0x330/0x890 arch/arm64/mm/fault.c:583
do_translation_fault+0x94/0xc8 arch/arm64/mm/fault.c:667
do_mem_abort+0x74/0x200 arch/arm64/mm/fault.c:803
el1_abort+0x3c/0x5c arch/arm64/kernel/entry-common.c:367
el1h_64_sync_handler+0x60/0xac arch/arm64/kernel/entry-common.c:427
el1h_64_sync+0x64/0x68 arch/arm64/kernel/entry.S:580
__arch_copy_from_user+0xa4/0x230 arch/arm64/lib/copy_template.S:94
__sys_bpf+0x1fc/0x654 kernel/bpf/syscall.c:4941
__do_sys_bpf kernel/bpf/syscall.c:5072 [inline]
__se_sys_bpf kernel/bpf/syscall.c:5070 [inline]
__arm64_sys_bpf+0x80/0x98 kernel/bpf/syscall.c:5070
__invoke_syscall arch/arm64/kernel/syscall.c:38 [inline]
invoke_syscall+0x98/0x2c0 arch/arm64/kernel/syscall.c:52
el0_svc_common+0x138/0x258 arch/arm64/kernel/syscall.c:142
do_el0_svc+0x64/0x218 arch/arm64/kernel/syscall.c:206
el0_svc+0x58/0x168 arch/arm64/kernel/entry-common.c:637
el0t_64_sync_handler+0x84/0xf0 arch/arm64/kernel/entry-common.c:655
el0t_64_sync+0x18c/0x190 arch/arm64/kernel/entry.S:585

Showing all locks held in the system:
1 lock held by rcu_tasks_kthre/12:
#0: ffff8000159f4ef0 (rcu_tasks.tasks_gp_mutex){+.+.}-{3:3}, at: rcu_tasks_one_gp+0x44/0xcf4 kernel/rcu/tasks.h:516
1 lock held by rcu_tasks_trace/13:
#0: ffff8000159f56f0 (rcu_tasks_trace.tasks_gp_mutex){+.+.}-{3:3}, at: rcu_tasks_one_gp+0x44/0xcf4 kernel/rcu/tasks.h:516
1 lock held by khungtaskd/28:
#0: ffff8000159f4d20 (rcu_read_lock){....}-{1:2}, at: rcu_lock_acquire+0xc/0x44 include/linux/rcupdate.h:305
2 locks held by kworker/u4:3/55:
2 locks held by getty/3984:
#0: ffff0000d5f37098 (&tty->ldisc_sem){++++}-{0:0}, at: ldsem_down_read+0x3c/0x4c drivers/tty/tty_ldsem.c:340
#1: ffff80001bcb02f0 (&ldata->atomic_read_lock){+.+.}-{3:3}, at: n_tty_read+0x414/0x1214 drivers/tty/n_tty.c:2188
2 locks held by syz-executor297/6126:
#0: ffff0000e27e1b60 (mapping.invalidate_lock#3){.+.+}-{3:3}, at: filemap_invalidate_lock_shared include/linux/fs.h:811 [inline]
#0: ffff0000e27e1b60 (mapping.invalidate_lock#3){.+.+}-{3:3}, at: filemap_fault+0x744/0xf7c mm/filemap.c:3197
#1: ffff0000e27e1720 (&ni->ni_lock/4){+.+.}-{3:3}, at: ni_lock fs/ntfs3/ntfs_fs.h:1111 [inline]
#1: ffff0000e27e1720 (&ni->ni_lock/4){+.+.}-{3:3}, at: ntfs_read_folio+0x140/0x1c0 fs/ntfs3/inode.c:722
2 locks held by syz-executor297/6127:
#0: ffff0000e27e1b60 (mapping.invalidate_lock#3){.+.+}-{3:3}, at: filemap_invalidate_lock_shared include/linux/fs.h:811 [inline]
#0: ffff0000e27e1b60 (mapping.invalidate_lock#3){.+.+}-{3:3}, at: filemap_fault+0x58c/0xf7c mm/filemap.c:3182
#1: ffff0000e27e1720 (&ni->ni_lock/4){+.+.}-{3:3}, at: ni_lock fs/ntfs3/ntfs_fs.h:1111 [inline]
#1: ffff0000e27e1720 (&ni->ni_lock/4){+.+.}-{3:3}, at: ntfs_read_folio+0x140/0x1c0 fs/ntfs3/inode.c:722

=============================================



---
This report is generated by a bot. It may contain errors.
See https://goo.gl/tpsmEJ for more information about syzbot.
syzbot engineers can be reached at syzk...@googlegroups.com.

syzbot will keep track of this issue. See:
https://goo.gl/tpsmEJ#status for how to communicate with syzbot.

If the report is already addressed, let syzbot know by replying with:
#syz fix: exact-commit-title

If you want syzbot to run the reproducer, reply with:
#syz test: git://repo/address.git branch-or-commit-hash
If you attach or paste a git patch, syzbot will apply it before testing.

If you want to overwrite report's subsystems, reply with:
#syz set subsystems: new-subsystem
(See the list of subsystem names on the web dashboard)

If the report is a duplicate of another one, reply with:
#syz dup: exact-subject-of-another-report

If you want to undo deduplication, reply with:
#syz undup
Reply all
Reply to author
Forward
0 new messages