Re: [syzbot] [fs?] [mm?] KMSAN: uninit-value in ondemand_readahead

From: syzbot
Date: Fri Feb 24 2023 - 03:32:59 EST


syzbot has found a reproducer for the following issue on:

HEAD commit: 97e36f4aa06f Revert "sched/core: kmsan: do not instrument ..
git tree: https://github.com/google/kmsan.git master
console output: https://syzkaller.appspot.com/x/log.txt?x=10e46944c80000
kernel config: https://syzkaller.appspot.com/x/.config?x=46c642641b9ef616
dashboard link: https://syzkaller.appspot.com/bug?extid=8ce7f8308d91e6b8bbe2
compiler: Debian clang version 15.0.7, GNU ld (GNU Binutils for Debian) 2.35.2
userspace arch: i386
syz repro: https://syzkaller.appspot.com/x/repro.syz?x=143b8650c80000
C reproducer: https://syzkaller.appspot.com/x/repro.c?x=15a22f2cc80000

Downloadable assets:
disk image: https://storage.googleapis.com/syzbot-assets/9931a9627dc6/disk-97e36f4a.raw.xz
vmlinux: https://storage.googleapis.com/syzbot-assets/1aafdb2fd6dc/vmlinux-97e36f4a.xz
kernel image: https://storage.googleapis.com/syzbot-assets/90df5872c7ff/bzImage-97e36f4a.xz
mounted in repro: https://storage.googleapis.com/syzbot-assets/ea75a01297dd/mount_0.gz

IMPORTANT: if you fix the issue, please add the following tag to the commit:
Reported-by: syzbot+8ce7f8308d91e6b8bbe2@xxxxxxxxxxxxxxxxxxxxxxxxx

loop0: detected capacity change from 0 to 16
=====================================================
BUG: KMSAN: uninit-value in ondemand_readahead+0xddf/0x1720 mm/readahead.c:596
ondemand_readahead+0xddf/0x1720 mm/readahead.c:596
page_cache_sync_ra+0x72b/0x760 mm/readahead.c:709
page_cache_sync_readahead include/linux/pagemap.h:1210 [inline]
cramfs_blkdev_read fs/cramfs/inode.c:217 [inline]
cramfs_read+0x611/0x1280 fs/cramfs/inode.c:278
cramfs_lookup+0x1b8/0x870 fs/cramfs/inode.c:767
__lookup_slow+0x528/0x730 fs/namei.c:1685
lookup_slow+0x6a/0xc0 fs/namei.c:1702
walk_component fs/namei.c:1993 [inline]
link_path_walk+0xe9a/0x1620 fs/namei.c:2320
path_openat+0x333/0x5750 fs/namei.c:3710
do_filp_open+0x24d/0x660 fs/namei.c:3741
do_sys_openat2+0x1f0/0x910 fs/open.c:1310
do_sys_open fs/open.c:1326 [inline]
__do_compat_sys_openat fs/open.c:1386 [inline]
__se_compat_sys_openat fs/open.c:1384 [inline]
__ia32_compat_sys_openat+0x2ab/0x330 fs/open.c:1384
do_syscall_32_irqs_on arch/x86/entry/common.c:112 [inline]
__do_fast_syscall_32+0xa2/0x100 arch/x86/entry/common.c:178
do_fast_syscall_32+0x37/0x80 arch/x86/entry/common.c:203
do_SYSENTER_32+0x1f/0x30 arch/x86/entry/common.c:246
entry_SYSENTER_compat_after_hwframe+0x70/0x82

Local variable ra.i created at:
cramfs_blkdev_read fs/cramfs/inode.c:186 [inline]
cramfs_read+0xc0/0x1280 fs/cramfs/inode.c:278
cramfs_lookup+0x1b8/0x870 fs/cramfs/inode.c:767

CPU: 1 PID: 5017 Comm: syz-executor948 Not tainted 6.2.0-syzkaller-81152-g97e36f4aa06f #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/16/2023
=====================================================