syzbot


UBSAN: array-index-out-of-bounds in f2fs_truncate_inode_blocks (2)

Status: upstream: reported on 2025/02/20 08:42
Subsystems: f2fs
[Documentation on labels]
Reported-by: syzbot+51d857eed5614c310da0@syzkaller.appspotmail.com
First crash: 58d, last: 34d
Discussions (2)
Title Replies (including bot) Last reply
[syzbot] Monthly f2fs report (Feb 2025) 0 (1) 2025/02/26 12:08
[syzbot] [f2fs?] UBSAN: array-index-out-of-bounds in f2fs_truncate_inode_blocks (2) 0 (1) 2025/02/20 08:42
Similar bugs (1)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream UBSAN: array-index-out-of-bounds in f2fs_truncate_inode_blocks f2fs 1 198d 194d 0/28 auto-obsoleted due to no activity on 2025/01/06 22:40

Sample crash report:
loop0: detected capacity change from 0 to 40427
F2FS-fs (loop0): Invalid log_blocksize (268), supports only 12
F2FS-fs (loop0): Can't find valid F2FS filesystem in 1th superblock
F2FS-fs (loop0): Found nat_bits in checkpoint
F2FS-fs (loop0): Try to recover 1th superblock, ret: 0
F2FS-fs (loop0): Mounted with checkpoint version = 48b305e5
=======================================================
WARNING: The mand mount option has been deprecated and
         and is ignored by this kernel. Remove the mand
         option from the mount to silence this warning.
=======================================================
overlay: ./file0 is not a directory
F2FS-fs (loop0): access invalid blkaddr:1
CPU: 0 UID: 255 PID: 5324 Comm: syz.0.0 Not tainted 6.14.0-rc6-syzkaller-00003-g4d872d51bc9d #0
Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014
Call Trace:
 <TASK>
 __dump_stack lib/dump_stack.c:94 [inline]
 dump_stack_lvl+0x241/0x360 lib/dump_stack.c:120
 __f2fs_is_valid_blkaddr+0xe16/0x1460 fs/f2fs/checkpoint.c:213
 f2fs_map_blocks+0xd93/0x4e70 fs/f2fs/data.c:1586
 f2fs_preallocate_blocks fs/f2fs/file.c:4836 [inline]
 f2fs_file_write_iter+0x112a/0x2560 fs/f2fs/file.c:5072
 new_sync_write fs/read_write.c:586 [inline]
 vfs_write+0xacf/0xd10 fs/read_write.c:679
 ksys_write+0x18f/0x2b0 fs/read_write.c:731
 do_syscall_x64 arch/x86/entry/common.c:52 [inline]
 do_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83
 entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7fd328b8d169
Code: ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 a8 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007fd329a8e038 EFLAGS: 00000246 ORIG_RAX: 0000000000000001
RAX: ffffffffffffffda RBX: 00007fd328da5fa0 RCX: 00007fd328b8d169
RDX: 000000000000fdef RSI: 0000400000000100 RDI: 0000000000000007
RBP: 00007fd328c0e2a0 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 0000000000000000 R14: 00007fd328da5fa0 R15: 00007ffd3d64fd28
 </TASK>
------------[ cut here ]------------
UBSAN: array-index-out-of-bounds in fs/f2fs/node.h:381:10
index 18446744073709550692 is out of range for type '__le32[5]' (aka 'unsigned int[5]')
CPU: 0 UID: 255 PID: 5324 Comm: syz.0.0 Not tainted 6.14.0-rc6-syzkaller-00003-g4d872d51bc9d #0
Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014
Call Trace:
 <TASK>
 __dump_stack lib/dump_stack.c:94 [inline]
 dump_stack_lvl+0x241/0x360 lib/dump_stack.c:120
 ubsan_epilogue lib/ubsan.c:231 [inline]
 __ubsan_handle_out_of_bounds+0x121/0x150 lib/ubsan.c:429
 get_nid fs/f2fs/node.h:381 [inline]
 f2fs_truncate_inode_blocks+0xa5e/0xf60 fs/f2fs/node.c:1181
 f2fs_do_truncate_blocks+0x782/0x1030 fs/f2fs/file.c:808
 f2fs_truncate_blocks+0x10d/0x300 fs/f2fs/file.c:836
 f2fs_truncate+0x417/0x720 fs/f2fs/file.c:886
 f2fs_file_write_iter+0x1be0/0x2560 fs/f2fs/file.c:5093
 new_sync_write fs/read_write.c:586 [inline]
 vfs_write+0xacf/0xd10 fs/read_write.c:679
 ksys_write+0x18f/0x2b0 fs/read_write.c:731
 do_syscall_x64 arch/x86/entry/common.c:52 [inline]
 do_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83
 entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7fd328b8d169
Code: ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 a8 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007fd329a8e038 EFLAGS: 00000246 ORIG_RAX: 0000000000000001
RAX: ffffffffffffffda RBX: 00007fd328da5fa0 RCX: 00007fd328b8d169
RDX: 000000000000fdef RSI: 0000400000000100 RDI: 0000000000000007
RBP: 00007fd328c0e2a0 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 0000000000000000 R14: 00007fd328da5fa0 R15: 00007ffd3d64fd28
 </TASK>
---[ end trace ]---

Crashes (8):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2025/03/11 12:31 upstream 4d872d51bc9d 16256247 .config console log report [disk image (non-bootable)] [vmlinux] [kernel image] ci-snapshot-upstream-root UBSAN: array-index-out-of-bounds in f2fs_truncate_inode_blocks
2025/03/11 10:31 upstream 4d872d51bc9d 16256247 .config console log report [disk image (non-bootable)] [vmlinux] [kernel image] ci-snapshot-upstream-root UBSAN: array-index-out-of-bounds in f2fs_truncate_inode_blocks
2025/03/06 12:36 upstream 848e07631744 831e3629 .config console log report [disk image (non-bootable)] [vmlinux] [kernel image] ci-snapshot-upstream-root UBSAN: array-index-out-of-bounds in f2fs_truncate_inode_blocks
2025/03/06 06:04 upstream cfced12f5100 034534df .config console log report [disk image (non-bootable)] [vmlinux] [kernel image] ci-snapshot-upstream-root UBSAN: array-index-out-of-bounds in f2fs_truncate_inode_blocks
2025/03/01 13:08 upstream 276f98efb64a 67cf5345 .config console log report [disk image (non-bootable)] [vmlinux] [kernel image] ci-snapshot-upstream-root UBSAN: array-index-out-of-bounds in f2fs_truncate_inode_blocks
2025/02/19 15:58 upstream 6537cfb395f3 cbd8edab .config console log report [disk image (non-bootable)] [vmlinux] [kernel image] ci-snapshot-upstream-root UBSAN: array-index-out-of-bounds in f2fs_truncate_inode_blocks
2025/02/17 15:39 upstream 0ad2507d5d93 4121cf9d .config console log report [disk image (non-bootable)] [vmlinux] [kernel image] ci-snapshot-upstream-root UBSAN: array-index-out-of-bounds in f2fs_truncate_inode_blocks
2025/02/16 08:38 upstream ad1b832bf1cf 40a34ec9 .config console log report [disk image (non-bootable)] [vmlinux] [kernel image] ci-snapshot-upstream-root UBSAN: array-index-out-of-bounds in f2fs_truncate_inode_blocks
* Struck through repros no longer work on HEAD.