[v6.1] UBSAN: array-index-out-of-bounds in txCommit (2)

0 views
Skip to first unread message

syzbot

unread,
Nov 5, 2023, 4:28:29 AM11/5/23
to syzkaller...@googlegroups.com
Hello,

syzbot found the following issue on:

HEAD commit: 4a61839152cc Linux 6.1.61
git tree: linux-6.1.y
console output: https://syzkaller.appspot.com/x/log.txt?x=1296f6cf680000
kernel config: https://syzkaller.appspot.com/x/.config?x=a1472537c0348d87
dashboard link: https://syzkaller.appspot.com/bug?extid=e829cfdd0de521302df4
compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40

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

Downloadable assets:
disk image: https://storage.googleapis.com/syzbot-assets/5f10d3d8a196/disk-4a618391.raw.xz
vmlinux: https://storage.googleapis.com/syzbot-assets/a5f64dac603f/vmlinux-4a618391.xz
kernel image: https://storage.googleapis.com/syzbot-assets/172392fd3ea1/bzImage-4a618391.xz

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

================================================================================
UBSAN: array-index-out-of-bounds in fs/jfs/jfs_txnmgr.c:1743:5
index 18 is out of range for type 'xad_t[18]' (aka 'struct xad[18]')
CPU: 0 PID: 19676 Comm: syz-executor.0 Not tainted 6.1.61-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/09/2023
Call Trace:
<TASK>
__dump_stack lib/dump_stack.c:88 [inline]
dump_stack_lvl+0x1e3/0x2cb lib/dump_stack.c:106
ubsan_epilogue lib/ubsan.c:151 [inline]
__ubsan_handle_out_of_bounds+0x118/0x140 lib/ubsan.c:282
xtLog fs/jfs/jfs_txnmgr.c:1743 [inline]
txLog fs/jfs/jfs_txnmgr.c:1396 [inline]
txCommit+0x3f07/0x6ba0 fs/jfs/jfs_txnmgr.c:1264
jfs_commit_inode+0x362/0x580 fs/jfs/inode.c:108
extAlloc+0xca8/0x1000 fs/jfs/jfs_extent.c:172
jfs_get_block+0x417/0xe50 fs/jfs/inode.c:248
__block_write_begin_int+0x544/0x1a30 fs/buffer.c:1991
__block_write_begin fs/buffer.c:2041 [inline]
block_write_begin+0x98/0x1f0 fs/buffer.c:2102
jfs_write_begin+0x2d/0x60 fs/jfs/inode.c:304
generic_perform_write+0x2fc/0x5e0 mm/filemap.c:3754
__generic_file_write_iter+0x176/0x400 mm/filemap.c:3882
generic_file_write_iter+0xab/0x310 mm/filemap.c:3914
do_iter_write+0x6e6/0xc50 fs/read_write.c:861
iter_file_splice_write+0x806/0xfa0 fs/splice.c:686
do_splice_from fs/splice.c:764 [inline]
direct_splice_actor+0xe3/0x1c0 fs/splice.c:931
splice_direct_to_actor+0x4c0/0xbd0 fs/splice.c:886
do_splice_direct+0x27f/0x3c0 fs/splice.c:974
do_sendfile+0x61c/0xff0 fs/read_write.c:1255
__do_sys_sendfile64 fs/read_write.c:1323 [inline]
__se_sys_sendfile64+0x178/0x1e0 fs/read_write.c:1309
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+0x63/0xcd
RIP: 0033:0x7f04bf07cae9
Code: 28 00 00 00 75 05 48 83 c4 28 c3 e8 e1 20 00 00 90 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 b0 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007f04bfdbb0c8 EFLAGS: 00000246 ORIG_RAX: 0000000000000028
RAX: ffffffffffffffda RBX: 00007f04bf19c050 RCX: 00007f04bf07cae9
RDX: 0000000000000000 RSI: 0000000000000009 RDI: 0000000000000008
RBP: 00007f04bf0c847a R08: 0000000000000000 R09: 0000000000000000
R10: 0001000000201005 R11: 0000000000000246 R12: 0000000000000000
R13: 000000000000006e R14: 00007f04bf19c050 R15: 00007ffd7e6a3688
</TASK>
================================================================================


---
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,
Nov 5, 2023, 6:21:30 PM11/5/23
to syzkaller...@googlegroups.com
syzbot has found a reproducer for the following issue on:

HEAD commit: 4a61839152cc Linux 6.1.61
git tree: linux-6.1.y
console output: https://syzkaller.appspot.com/x/log.txt?x=157b5f40e80000
kernel config: https://syzkaller.appspot.com/x/.config?x=a1472537c0348d87
dashboard link: https://syzkaller.appspot.com/bug?extid=e829cfdd0de521302df4
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=1669bb08e80000
C reproducer: https://syzkaller.appspot.com/x/repro.c?x=10f24527680000
mounted in repro: https://storage.googleapis.com/syzbot-assets/0eda369cb4aa/mount_0.gz

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

================================================================================
UBSAN: array-index-out-of-bounds in fs/jfs/jfs_txnmgr.c:1743:5
index 18 is out of range for type 'xad_t[18]' (aka 'struct xad[18]')
CPU: 0 PID: 3543 Comm: syz-executor880 Not tainted 6.1.61-syzkaller #0
RIP: 0033:0x7ff9f051f589
Code: 28 00 00 00 75 05 48 83 c4 28 c3 e8 81 18 00 00 90 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 b0 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007ff9f04bb218 EFLAGS: 00000246 ORIG_RAX: 0000000000000028
RAX: ffffffffffffffda RBX: 00007ff9f05ac658 RCX: 00007ff9f051f589
RDX: 0000000000000000 RSI: 0000000000000009 RDI: 0000000000000008
RBP: 00007ff9f05ac650 R08: 0000000000000000 R09: 0000000000000000
R10: 0001000000201005 R11: 0000000000000246 R12: 00007ff9f05ac65c
R13: 00007ff9f0578f58 R14: 00007ff9f05730c0 R15: 0031656c69662f2e
</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,
Nov 13, 2023, 9:25:30 PM11/13/23
to syzkaller...@googlegroups.com
Hello,

syzbot found the following issue on:

HEAD commit: 80529b4968a8 Linux 5.15.138
git tree: linux-5.15.y
console output: https://syzkaller.appspot.com/x/log.txt?x=17e23b0f680000
kernel config: https://syzkaller.appspot.com/x/.config?x=c431dbb457f792c5
dashboard link: https://syzkaller.appspot.com/bug?extid=18f56c2d4eb23f2e3179
compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40

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

Downloadable assets:
disk image: https://storage.googleapis.com/syzbot-assets/4fd4b10a6041/disk-80529b49.raw.xz
vmlinux: https://storage.googleapis.com/syzbot-assets/60443f81279e/vmlinux-80529b49.xz
kernel image: https://storage.googleapis.com/syzbot-assets/c7f38af1be13/bzImage-80529b49.xz

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

================================================================================
UBSAN: array-index-out-of-bounds in fs/jfs/jfs_txnmgr.c:1777:5
index 18 is out of range for type 'xad_t[18]' (aka 'struct xad[18]')
CPU: 0 PID: 6712 Comm: syz-executor.3 Not tainted 5.15.138-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/09/2023
Call Trace:
<TASK>
__dump_stack lib/dump_stack.c:88 [inline]
dump_stack_lvl+0x1e3/0x2cb lib/dump_stack.c:106
ubsan_epilogue lib/ubsan.c:151 [inline]
__ubsan_handle_out_of_bounds+0x118/0x140 lib/ubsan.c:282
xtLog fs/jfs/jfs_txnmgr.c:1777 [inline]
txLog fs/jfs/jfs_txnmgr.c:1396 [inline]
txCommit+0x3f07/0x6ba0 fs/jfs/jfs_txnmgr.c:1264
jfs_commit_inode+0x362/0x580 fs/jfs/inode.c:108
extAlloc+0xca8/0x1000 fs/jfs/jfs_extent.c:175
jfs_get_block+0x417/0xe50 fs/jfs/inode.c:258
get_more_blocks fs/direct-io.c:673 [inline]
do_direct_IO fs/direct-io.c:959 [inline]
do_blockdev_direct_IO fs/direct-io.c:1276 [inline]
__blockdev_direct_IO+0x1b13/0x4f40 fs/direct-io.c:1368
blockdev_direct_IO include/linux/fs.h:3232 [inline]
jfs_direct_IO+0xf6/0x1e0 fs/jfs/inode.c:343
generic_file_direct_write+0x204/0x460 mm/filemap.c:3678
__generic_file_write_iter+0x2a2/0x4f0 mm/filemap.c:3860
generic_file_write_iter+0xa7/0x1b0 mm/filemap.c:3935
do_iter_readv_writev+0x594/0x7a0
do_iter_write+0x1ea/0x760 fs/read_write.c:855
iter_file_splice_write+0x806/0xfa0 fs/splice.c:689
do_splice_from fs/splice.c:767 [inline]
direct_splice_actor+0xe3/0x1c0 fs/splice.c:936
splice_direct_to_actor+0x500/0xc10 fs/splice.c:891
do_splice_direct+0x285/0x3d0 fs/splice.c:979
do_sendfile+0x625/0xff0 fs/read_write.c:1249
__do_sys_sendfile64 fs/read_write.c:1317 [inline]
__se_sys_sendfile64+0x178/0x1e0 fs/read_write.c:1303
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:0x7f8617f0cae9
Code: 28 00 00 00 75 05 48 83 c4 28 c3 e8 e1 20 00 00 90 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 b0 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007f861646d0c8 EFLAGS: 00000246 ORIG_RAX: 0000000000000028
RAX: ffffffffffffffda RBX: 00007f861802c050 RCX: 00007f8617f0cae9
RDX: 0000000000000000 RSI: 0000000000000007 RDI: 0000000000000006
RBP: 00007f8617f5847a R08: 0000000000000000 R09: 0000000000000000
R10: 0001000000201014 R11: 0000000000000246 R12: 0000000000000000
R13: 000000000000006e R14: 00007f861802c050 R15: 00007ffc2047ee48

syzbot

unread,
Nov 19, 2023, 3:56:21 AM11/19/23
to syzkaller...@googlegroups.com
syzbot has found a reproducer for the following issue on:

HEAD commit: 80529b4968a8 Linux 5.15.138
git tree: linux-5.15.y
console output: https://syzkaller.appspot.com/x/log.txt?x=10f3289f680000
kernel config: https://syzkaller.appspot.com/x/.config?x=c431dbb457f792c5
dashboard link: https://syzkaller.appspot.com/bug?extid=18f56c2d4eb23f2e3179
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=17f43d20e80000
C reproducer: https://syzkaller.appspot.com/x/repro.c?x=11ce073f680000
mounted in repro: https://storage.googleapis.com/syzbot-assets/d44d71632186/mount_0.gz

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

================================================================================
UBSAN: array-index-out-of-bounds in fs/jfs/jfs_txnmgr.c:1777:5
index 18 is out of range for type 'xad_t[18]' (aka 'struct xad[18]')
CPU: 1 PID: 3503 Comm: syz-executor172 Not tainted 5.15.138-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 11/10/2023
Call Trace:
<TASK>
__dump_stack lib/dump_stack.c:88 [inline]
dump_stack_lvl+0x1e3/0x2cb lib/dump_stack.c:106
ubsan_epilogue lib/ubsan.c:151 [inline]
__ubsan_handle_out_of_bounds+0x118/0x140 lib/ubsan.c:282
xtLog fs/jfs/jfs_txnmgr.c:1777 [inline]
txLog fs/jfs/jfs_txnmgr.c:1396 [inline]
txCommit+0x3f07/0x6ba0 fs/jfs/jfs_txnmgr.c:1264
jfs_commit_inode+0x362/0x580 fs/jfs/inode.c:108
extAlloc+0xca8/0x1000 fs/jfs/jfs_extent.c:175
jfs_get_block+0x417/0xe50 fs/jfs/inode.c:258
nobh_write_begin+0x398/0xda0 fs/buffer.c:2650
jfs_write_begin+0x3e/0x80 fs/jfs/inode.c:322
generic_perform_write+0x2bf/0x5b0 mm/filemap.c:3776
__generic_file_write_iter+0x243/0x4f0 mm/filemap.c:3903
generic_file_write_iter+0xa7/0x1b0 mm/filemap.c:3935
do_iter_readv_writev+0x594/0x7a0
do_iter_write+0x1ea/0x760 fs/read_write.c:855
iter_file_splice_write+0x806/0xfa0 fs/splice.c:689
do_splice_from fs/splice.c:767 [inline]
direct_splice_actor+0xe3/0x1c0 fs/splice.c:936
splice_direct_to_actor+0x500/0xc10 fs/splice.c:891
do_splice_direct+0x285/0x3d0 fs/splice.c:979
do_sendfile+0x625/0xff0 fs/read_write.c:1249
__do_sys_sendfile64 fs/read_write.c:1317 [inline]
__se_sys_sendfile64+0x178/0x1e0 fs/read_write.c:1303
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:0x7fac88759509
Code: 28 00 00 00 75 05 48 83 c4 28 c3 e8 81 18 00 00 90 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 b0 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007fac886f5218 EFLAGS: 00000246 ORIG_RAX: 0000000000000028
RAX: ffffffffffffffda RBX: 00007fac887e6658 RCX: 00007fac88759509
RDX: 0000000000000000 RSI: 0000000000000006 RDI: 0000000000000007
RBP: 00007fac887e6650 R08: 0000000000000000 R09: 0000000000000000
R10: 0001000000201005 R11: 0000000000000246 R12: 00007fac887e665c
R13: 00007fac887b2f58 R14: 00007fac887ad0c0 R15: 0031656c69662f2e

syzbot

unread,
Dec 17, 2023, 1:03:06 PM12/17/23
to syzkaller...@googlegroups.com
syzbot suspects this issue could be fixed by backporting the following commit:

commit a779ed754e52d582b8c0e17959df063108bd0656
git tree: upstream
Author: Dave Kleikamp <dave.k...@oracle.com>
Date: Thu Oct 5 14:16:14 2023 +0000

jfs: define xtree root and page independently

bisection log: https://syzkaller.appspot.com/x/bisect.txt?x=11a01571e80000
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