[v5.15] WARNING in iomap_page_release

0 views
Skip to first unread message

syzbot

unread,
Feb 19, 2024, 3:31:21 AMFeb 19
to syzkaller...@googlegroups.com
Hello,

syzbot found the following issue on:

HEAD commit: 6139f2a02fe0 Linux 5.15.148
git tree: linux-5.15.y
console output: https://syzkaller.appspot.com/x/log.txt?x=15847f68180000
kernel config: https://syzkaller.appspot.com/x/.config?x=c3cfb017ec09dfb8
dashboard link: https://syzkaller.appspot.com/bug?extid=c0ffed3897231d71f047
compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40
userspace arch: arm64

Unfortunately, I don't have any reproducer for this issue yet.

Downloadable assets:
disk image: https://storage.googleapis.com/syzbot-assets/863dea226ad0/disk-6139f2a0.raw.xz
vmlinux: https://storage.googleapis.com/syzbot-assets/db1a0715548e/vmlinux-6139f2a0.xz
kernel image: https://storage.googleapis.com/syzbot-assets/edd9bd0f16ff/Image-6139f2a0.gz.xz

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

------------[ cut here ]------------
WARNING: CPU: 1 PID: 4003 at fs/iomap/buffered-io.c:80 iomap_page_release+0x30c/0x438 fs/iomap/buffered-io.c:79
Modules linked in:
CPU: 1 PID: 4003 Comm: syz-executor.4 Not tainted 5.15.148-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/25/2024
pstate: 80400005 (Nzcv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
pc : iomap_page_release+0x30c/0x438 fs/iomap/buffered-io.c:79
lr : iomap_page_release+0x30c/0x438 fs/iomap/buffered-io.c:79
sp : ffff80001ce27480
x29: ffff80001ce27480 x28: 0000000000000008 x27: ffff800011b4d5a0
x26: 1fffff8000917139 x25: dfff800000000000 x24: 0000000000000000
x23: 0000000000000002 x22: 0000000000000002 x21: 05ffc00000000011
x20: ffff0000d87f1200 x19: 0000000000000000 x18: 0000000000000000
x17: 0000000000000000 x16: ffff80001198323c x15: 0000000000000406
x14: 00000000ffff8000 x13: 00000000895682e3 x12: 0000000000000001
x11: 0000000000000000 x10: 0000000000000000 x9 : ffff0000c2d9d1c0
x8 : ffff800008b3aa64 x7 : 0000000000000000 x6 : 000000000000003f
x5 : 0000000000000040 x4 : 0000000000000000 x3 : ffff800008b3a974
x2 : 0000000000000000 x1 : 0000000000000000 x0 : 0000000000000000
Call trace:
iomap_page_release+0x30c/0x438 fs/iomap/buffered-io.c:79
iomap_invalidatepage+0x2c4/0x568 fs/iomap/buffered-io.c:490
do_invalidatepage mm/truncate.c:157 [inline]
truncate_cleanup_page+0x15c/0x414 mm/truncate.c:176
truncate_inode_pages_range+0x254/0xbe0 mm/truncate.c:325
truncate_inode_pages mm/truncate.c:425 [inline]
truncate_inode_pages_final+0x94/0xd0 mm/truncate.c:464
evict+0x26c/0x68c fs/inode.c:589
dispose_list fs/inode.c:620 [inline]
evict_inodes+0x6b4/0x74c fs/inode.c:670
generic_shutdown_super+0x9c/0x29c fs/super.c:454
kill_block_super+0x70/0xdc fs/super.c:1414
deactivate_locked_super+0xb8/0x13c fs/super.c:335
deactivate_super+0x108/0x128 fs/super.c:366
cleanup_mnt+0x3c0/0x474 fs/namespace.c:1143
__cleanup_mnt+0x20/0x30 fs/namespace.c:1150
task_work_run+0x130/0x1e4 kernel/task_work.c:164
tracehook_notify_resume include/linux/tracehook.h:189 [inline]
do_notify_resume+0x262c/0x32b8 arch/arm64/kernel/signal.c:946
prepare_exit_to_user_mode arch/arm64/kernel/entry-common.c:133 [inline]
exit_to_user_mode arch/arm64/kernel/entry-common.c:138 [inline]
el0_svc+0xfc/0x1f0 arch/arm64/kernel/entry-common.c:609
el0t_64_sync_handler+0x84/0xe4 arch/arm64/kernel/entry-common.c:626
el0t_64_sync+0x1a0/0x1a4 arch/arm64/kernel/entry.S:584
irq event stamp: 6397580
hardirqs last enabled at (6397579): [<ffff8000088cc9e0>] kasan_quarantine_put+0xdc/0x204 mm/kasan/quarantine.c:231
hardirqs last disabled at (6397580): [<ffff80001197e8c8>] el1_dbg+0x24/0x80 arch/arm64/kernel/entry-common.c:396
softirqs last enabled at (6397050): [<ffff8000080300b4>] local_bh_enable+0x10/0x34 include/linux/bottom_half.h:31
softirqs last disabled at (6397048): [<ffff800008030080>] local_bh_disable+0x10/0x34 include/linux/bottom_half.h:18
---[ end trace d360b60ff329656e ]---
XFS (loop4): Unmounting Filesystem


---
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 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

syzbot

unread,
Feb 19, 2024, 4:57:20 AMFeb 19
to syzkaller...@googlegroups.com
syzbot has found a reproducer for the following issue on:

HEAD commit: 6139f2a02fe0 Linux 5.15.148
git tree: linux-5.15.y
console output: https://syzkaller.appspot.com/x/log.txt?x=12490158180000
kernel config: https://syzkaller.appspot.com/x/.config?x=c170eb20d8be8542
dashboard link: https://syzkaller.appspot.com/bug?extid=c0ffed3897231d71f047
compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40
syz repro: https://syzkaller.appspot.com/x/repro.syz?x=1193a064180000
C reproducer: https://syzkaller.appspot.com/x/repro.c?x=1691ba2c180000

Downloadable assets:
disk image: https://storage.googleapis.com/syzbot-assets/528e8fe56997/disk-6139f2a0.raw.xz
vmlinux: https://storage.googleapis.com/syzbot-assets/18abf1e442f9/vmlinux-6139f2a0.xz
kernel image: https://storage.googleapis.com/syzbot-assets/0538a5d3b1f3/bzImage-6139f2a0.xz
mounted in repro: https://storage.googleapis.com/syzbot-assets/94ef72da33e7/mount_0.gz

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

XFS (loop0): Corruption of in-memory data (0x8) detected at xfs_defer_finish_noroll+0x1750/0x1df0 fs/xfs/libxfs/xfs_defer.c:504 (fs/xfs/libxfs/xfs_defer.c:504). Shutting down filesystem.
XFS (loop0): Please unmount the filesystem and rectify the problem(s)
------------[ cut here ]------------
WARNING: CPU: 1 PID: 3507 at fs/iomap/buffered-io.c:80 iomap_page_release+0x305/0x3b0
Modules linked in:
CPU: 1 PID: 3507 Comm: syz-executor895 Not tainted 5.15.148-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/25/2024
RIP: 0010:iomap_page_release+0x305/0x3b0 fs/iomap/buffered-io.c:79
Code: e8 00 d8 8c ff 0f 0b e9 bc fe ff ff e8 f4 d7 8c ff 0f 0b e9 ec fe ff ff e8 e8 d7 8c ff 48 ff cb e9 49 ff ff ff e8 db d7 8c ff <0f> 0b eb bc 44 89 f1 80 e1 07 38 c1 0f 8c 23 fe ff ff 4c 89 f7 e8
RSP: 0018:ffffc90002e77838 EFLAGS: 00010293
RAX: ffffffff81f355e5 RBX: 0000000000000000 RCX: ffff888013fad940
RDX: 0000000000000000 RSI: 0000000000000001 RDI: 0000000000000000
RBP: 0000000000000001 R08: ffffffff81f3559c R09: fffff940003fa7d1
R10: 0000000000000000 R11: dffffc0000000001 R12: ffffea0001fd3e80
R13: 0000000000000001 R14: ffff888023060800 R15: 1ffffd40003fa7d1
FS: 0000000000000000(0000) GS:ffff8880b9b00000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f4c942730b8 CR3: 000000000c68e000 CR4: 00000000003506e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
<TASK>
do_invalidatepage mm/truncate.c:157 [inline]
truncate_cleanup_page+0x179/0x440 mm/truncate.c:176
truncate_inode_pages_range+0x2e7/0x1290 mm/truncate.c:325
evict+0x2b7/0x620 fs/inode.c:589
dispose_list fs/inode.c:620 [inline]
evict_inodes+0x601/0x6a0 fs/inode.c:670
generic_shutdown_super+0x99/0x2c0 fs/super.c:454
kill_block_super+0x7a/0xe0 fs/super.c:1414
deactivate_locked_super+0xa0/0x110 fs/super.c:335
cleanup_mnt+0x44e/0x500 fs/namespace.c:1143
task_work_run+0x129/0x1a0 kernel/task_work.c:164
exit_task_work include/linux/task_work.h:32 [inline]
do_exit+0x6a3/0x2480 kernel/exit.c:872
do_group_exit+0x144/0x310 kernel/exit.c:994
__do_sys_exit_group kernel/exit.c:1005 [inline]
__se_sys_exit_group kernel/exit.c:1003 [inline]
__x64_sys_exit_group+0x3b/0x40 kernel/exit.c:1003
do_syscall_x64 arch/x86/entry/common.c:50 [inline]
do_syscall_64+0x3d/0xb0 arch/x86/entry/common.c:80
entry_SYSCALL_64_after_hwframe+0x61/0xcb
RIP: 0033:0x7f4c94228d49
Code: Unable to access opcode bytes at RIP 0x7f4c94228d1f.
RSP: 002b:00007ffe081ad478 EFLAGS: 00000246 ORIG_RAX: 00000000000000e7
RAX: ffffffffffffffda RBX: 0000000000000001 RCX: 00007f4c94228d49
RDX: 000000000000003c RSI: 00000000000000e7 RDI: 0000000000000001
RBP: 00007f4c942ae2d0 R08: ffffffffffffffb8 R09: 00007f4c942a85f0
R10: 00007ffe081ad4d0 R11: 0000000000000246 R12: 00007f4c942ae2d0
R13: 0000000000000000 R14: 00007f4c942af040 R15: 00007f4c941f7060
</TASK>


---
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.

syzbot

unread,
Feb 20, 2024, 6:06:04 PMFeb 20
to syzkaller...@googlegroups.com
syzbot suspects this issue could be fixed by backporting the following commit:

commit e9c3a8e820ed0eeb2be05072f29f80d1b79f053b
git tree: upstream
Author: Darrick J. Wong <djw...@kernel.org>
Date: Mon May 16 22:27:38 2022 +0000

iomap: don't invalidate folios after writeback errors

bisection log: https://syzkaller.appspot.com/x/bisect.txt?x=1685dcf8180000
Please keep in mind that other backports might be required as well.

For information about bisection process see: https://goo.gl/tpsmEJ#bisection
Reply all
Reply to author
Forward
0 new messages