[v5.15] UBSAN: array-index-out-of-bounds in xtSearch (2)

2 views
Skip to first unread message

syzbot

unread,
Nov 5, 2023, 2:59:24 PM11/5/23
to syzkaller...@googlegroups.com
Hello,

syzbot found the following issue on:

HEAD commit: 12952a23a5da Linux 5.15.137
git tree: linux-5.15.y
console output: https://syzkaller.appspot.com/x/log.txt?x=145291ef680000
kernel config: https://syzkaller.appspot.com/x/.config?x=fec74236cf840914
dashboard link: https://syzkaller.appspot.com/bug?extid=ccb458b6679845ee0bae
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/d0102e80bd83/disk-12952a23.raw.xz
vmlinux: https://storage.googleapis.com/syzbot-assets/ad4bb1832eb8/vmlinux-12952a23.xz
kernel image: https://storage.googleapis.com/syzbot-assets/530bbc85fac0/bzImage-12952a23.xz

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

================================================================================
UBSAN: array-index-out-of-bounds in fs/jfs/jfs_xtree.c:371:4
index 19 is out of range for type 'xad_t[18]' (aka 'struct xad[18]')
CPU: 1 PID: 11678 Comm: syz-executor.4 Not tainted 5.15.137-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
xtSearch+0x6dc/0x1ca0 fs/jfs/jfs_xtree.c:371
xtLookup+0x2c0/0x8e0 fs/jfs/jfs_xtree.c:163
jfs_get_block+0x2e5/0xe50 fs/jfs/inode.c:218
__mpage_writepage+0x4f9/0x1c00 fs/mpage.c:564
write_cache_pages+0xa97/0x1160 mm/page-writeback.c:2255
mpage_writepages+0x13c/0x2f0 fs/mpage.c:712
do_writepages+0x481/0x730 mm/page-writeback.c:2364
filemap_fdatawrite_wbc+0x1d6/0x230 mm/filemap.c:400
__filemap_fdatawrite_range mm/filemap.c:433 [inline]
file_write_and_wait_range+0x1cb/0x2b0 mm/filemap.c:810
jfs_fsync+0x6e/0x1c0 fs/jfs/file.c:24
generic_write_sync include/linux/fs.h:2913 [inline]
generic_file_write_iter+0x15e/0x1b0 mm/filemap.c:3939
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:0x7fe02de58ae9
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:00007fe02c3b90c8 EFLAGS: 00000246 ORIG_RAX: 0000000000000028
RAX: ffffffffffffffda RBX: 00007fe02df78050 RCX: 00007fe02de58ae9
RDX: 0000000000000000 RSI: 0000000000000006 RDI: 0000000000000007
RBP: 00007fe02dea447a R08: 0000000000000000 R09: 0000000000000000
R10: 0001000000201005 R11: 0000000000000246 R12: 0000000000000000
R13: 000000000000006e R14: 00007fe02df78050 R15: 00007fff1c43fb48
</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, 3:01:27 PM11/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=17f49ecf680000
kernel config: https://syzkaller.appspot.com/x/.config?x=a1472537c0348d87
dashboard link: https://syzkaller.appspot.com/bug?extid=7cb897779f3c479d0615
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+7cb897...@syzkaller.appspotmail.com

================================================================================
UBSAN: array-index-out-of-bounds in fs/jfs/jfs_xtree.c:360:4
index 19 is out of range for type 'xad_t[18]' (aka 'struct xad[18]')
CPU: 0 PID: 12188 Comm: syz-executor.3 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
xtSearch+0x6dc/0x1ca0 fs/jfs/jfs_xtree.c:360
xtLookup+0x2c0/0x8e0 fs/jfs/jfs_xtree.c:152
extHint+0x291/0x710 fs/jfs/jfs_extent.c:215
jfs_get_block+0x3a7/0xe50 fs/jfs/inode.c:246
__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:0x7f4cd047cae9
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:00007f4cd11e70c8 EFLAGS: 00000246 ORIG_RAX: 0000000000000028
RAX: ffffffffffffffda RBX: 00007f4cd059c050 RCX: 00007f4cd047cae9
RDX: 0000000000000000 RSI: 0000000000000006 RDI: 0000000000000007
RBP: 00007f4cd04c847a R08: 0000000000000000 R09: 0000000000000000
R10: 0001000000201005 R11: 0000000000000246 R12: 0000000000000000
R13: 000000000000006e R14: 00007f4cd059c050 R15: 00007fffabce1748

syzbot

unread,
Nov 5, 2023, 7:40:29 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=13b6a8df680000
kernel config: https://syzkaller.appspot.com/x/.config?x=a1472537c0348d87
dashboard link: https://syzkaller.appspot.com/bug?extid=7cb897779f3c479d0615
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=114ea00f680000
C reproducer: https://syzkaller.appspot.com/x/repro.c?x=15b291ef680000
mounted in repro: https://storage.googleapis.com/syzbot-assets/20def6a9d454/mount_0.gz

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

================================================================================
UBSAN: array-index-out-of-bounds in fs/jfs/jfs_xtree.c:360:4
index 19 is out of range for type 'xad_t[18]' (aka 'struct xad[18]')
CPU: 0 PID: 3543 Comm: syz-executor424 Not tainted 6.1.61-syzkaller #0
RIP: 0033:0x7f5ce5609549
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:00007f5ce55a5218 EFLAGS: 00000246 ORIG_RAX: 0000000000000028
RAX: ffffffffffffffda RBX: 00007f5ce5696658 RCX: 00007f5ce5609549
RDX: 0000000000000000 RSI: 0000000000000006 RDI: 0000000000000007
RBP: 00007f5ce5696650 R08: 0000000000000000 R09: 0000000000000000
R10: 0001000000201005 R11: 0000000000000246 R12: 00007f5ce5663608
R13: 00007f5ce565d0c0 R14: 00007f5ce565d890 R15: 0030656c69662f2e
</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 14, 2023, 3:34:24 PM11/14/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=116f0304e80000
kernel config: https://syzkaller.appspot.com/x/.config?x=c431dbb457f792c5
dashboard link: https://syzkaller.appspot.com/bug?extid=ccb458b6679845ee0bae
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=12e0635b680000
C reproducer: https://syzkaller.appspot.com/x/repro.c?x=113bb250e80000

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
mounted in repro: https://storage.googleapis.com/syzbot-assets/dab626b7415d/mount_0.gz

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

================================================================================
UBSAN: array-index-out-of-bounds in fs/jfs/jfs_xtree.c:371:4
index 19 is out of range for type 'xad_t[18]' (aka 'struct xad[18]')
CPU: 1 PID: 3501 Comm: syz-executor387 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
xtSearch+0x6dc/0x1ca0 fs/jfs/jfs_xtree.c:371
xtLookup+0x2c0/0x8e0 fs/jfs/jfs_xtree.c:163
extHint+0x291/0x710 fs/jfs/jfs_extent.c:374
jfs_get_block+0x3a7/0xe50 fs/jfs/inode.c:256
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:0x7fca5203c0a9
Code: 28 00 00 00 75 05 48 83 c4 28 c3 e8 f1 17 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:00007fca51fd9228 EFLAGS: 00000246 ORIG_RAX: 0000000000000028
RAX: ffffffffffffffda RBX: 00007fca520c9658 RCX: 00007fca5203c0a9
RDX: 0000000000000000 RSI: 0000000000000006 RDI: 0000000000000007
RBP: 00007fca520c9650 R08: 00007fca51fd96c0 R09: 00007fca51fd96c0
R10: 0001000000201005 R11: 0000000000000246 R12: 00007fca520c965c
R13: 00007fca52095ef8 R14: 00007fca52090060 R15: 00007ffecbe77238

syzbot

unread,
Dec 18, 2023, 11:46:06 AM12/18/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=12659159e80000
Please keep in mind that other backports might be required as well.

For information about bisection process see: https://goo.gl/tpsmEJ#bisection

syzbot

unread,
Jan 4, 2024, 7:01:05 PMJan 4
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=1291bf81e80000
Reply all
Reply to author
Forward
0 new messages