[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <a441f694-b0f2-4a57-b4cc-b98cc995c323@kernel.org>
Date: Mon, 23 Dec 2024 22:13:28 +0800
From: Chao Yu <chao@...nel.org>
To: syzbot <syzbot+69f5379a1717a0b982a1@...kaller.appspotmail.com>,
jaegeuk@...nel.org, linux-f2fs-devel@...ts.sourceforge.net,
linux-kernel@...r.kernel.org, syzkaller-bugs@...glegroups.com
Cc: Chao Yu <chao@...nel.org>
Subject: Re: [syzbot] [f2fs?] UBSAN: array-index-out-of-bounds in
read_inline_xattr
#syz test: https://git.kernel.org/pub/scm/linux/kernel/git/chao/linux.git wip
On 2024/12/23 3:13, syzbot wrote:
> syzbot has found a reproducer for the following issue on:
>
> HEAD commit: bcde95ce32b6 Merge tag 'devicetree-fixes-for-6.13-1' of gi..
> git tree: upstream
> console+strace: https://syzkaller.appspot.com/x/log.txt?x=116c0adf980000
> kernel config: https://syzkaller.appspot.com/x/.config?x=1234f097ee657d8b
> dashboard link: https://syzkaller.appspot.com/bug?extid=69f5379a1717a0b982a1
> 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=167f9f30580000
> C reproducer: https://syzkaller.appspot.com/x/repro.c?x=142d7cf8580000
>
> Downloadable assets:
> disk image: https://storage.googleapis.com/syzbot-assets/be6d4de70f82/disk-bcde95ce.raw.xz
> vmlinux: https://storage.googleapis.com/syzbot-assets/70993500a1e4/vmlinux-bcde95ce.xz
> kernel image: https://storage.googleapis.com/syzbot-assets/1018443184c5/bzImage-bcde95ce.xz
> mounted in repro: https://storage.googleapis.com/syzbot-assets/7e1b134be79c/mount_0.gz
>
> IMPORTANT: if you fix the issue, please add the following tag to the commit:
> Reported-by: syzbot+69f5379a1717a0b982a1@...kaller.appspotmail.com
>
> F2FS-fs (loop0): Failed to enable quota tracking (type=1, err=-22). Please run fsck to fix.
> F2FS-fs (loop0): Cannot turn on quotas: error -22
> F2FS-fs (loop0): Mounted with checkpoint version = 1b41e954
> ------------[ cut here ]------------
> UBSAN: array-index-out-of-bounds in fs/f2fs/f2fs.h:3292:19
> index 18446744073709500059 is out of range for type '__le32[923]' (aka 'unsigned int[923]')
> CPU: 0 UID: 0 PID: 5820 Comm: syz-executor178 Not tainted 6.13.0-rc3-syzkaller-00301-gbcde95ce32b6 #0
> Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/13/2024
> 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
> read_inline_xattr+0x273/0x280
> lookup_all_xattrs fs/f2fs/xattr.c:341 [inline]
> f2fs_getxattr+0x57b/0x13b0 fs/f2fs/xattr.c:533
> __vfs_getxattr+0x433/0x470 fs/xattr.c:423
> smk_fetch+0xb1/0x140 security/smack/smack_lsm.c:306
> smack_d_instantiate+0x749/0xa50 security/smack/smack_lsm.c:3615
> security_d_instantiate+0x107/0x1f0 security/security.c:4070
> d_splice_alias+0x6f/0x330 fs/dcache.c:3001
> f2fs_lookup+0x4ff/0x820 fs/f2fs/namei.c:523
> lookup_one_qstr_excl+0x11f/0x260 fs/namei.c:1692
> filename_create+0x297/0x540 fs/namei.c:4081
> do_mkdirat+0xbd/0x3a0 fs/namei.c:4326
> __do_sys_mkdir fs/namei.c:4354 [inline]
> __se_sys_mkdir fs/namei.c:4352 [inline]
> __x64_sys_mkdir+0x6c/0x80 fs/namei.c:4352
> 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:0x7f5566117ad7
> Code: ff ff 77 07 31 c0 c3 0f 1f 40 00 48 c7 c2 b8 ff ff ff f7 d8 64 89 02 b8 ff ff ff ff c3 66 0f 1f 44 00 00 b8 53 00 00 00 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 b8 ff ff ff f7 d8 64 89 01 48
> RSP: 002b:00007fff7eab6a58 EFLAGS: 00000246 ORIG_RAX: 0000000000000053
> RAX: ffffffffffffffda RBX: 0000000000000000 RCX: 00007f5566117ad7
> RDX: 0000000000000000 RSI: 00000000000001ff RDI: 0000000020000180
> RBP: 0000000020000180 R08: 0000000000000000 R09: 0000000000000000
> R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
> R13: 00007fff7eab6af0 R14: 0000000000000000 R15: 0000000000000000
> </TASK>
> ---[ end trace ]---
>
>
> ---
> 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.
Powered by blists - more mailing lists