From: syzbot <syzbot+9d82b8de2992579da5d0@syzkaller.appspotmail.com>
To: akpm@linux-foundation.org, glider@google.com,
hirofumi@mail.parknet.co.jp, linux-kernel@vger.kernel.org,
syzkaller-bugs@googlegroups.com
Subject: Re: KMSAN: uninit-value in fat_evict_inode
Date: Fri, 21 Feb 2020 21:00:09 -0800 [thread overview]
Message-ID: <0000000000002bf78e059f2303c5@google.com> (raw)
In-Reply-To: <0000000000008a9e79059f1409f1@google.com>
syzbot has found a reproducer for the following crash on:
HEAD commit: 8bbbc5cf kmsan: don't compile memmove
git tree: https://github.com/google/kmsan.git master
console output: https://syzkaller.appspot.com/x/log.txt?x=11c3774ee00000
kernel config: https://syzkaller.appspot.com/x/.config?x=cd0e9a6b0e555cc3
dashboard link: https://syzkaller.appspot.com/bug?extid=9d82b8de2992579da5d0
compiler: clang version 10.0.0 (https://github.com/llvm/llvm-project/ c2443155a0fb245c8f17f2c1c72b6ea391e86e81)
userspace arch: i386
syz repro: https://syzkaller.appspot.com/x/repro.syz?x=171ce265e00000
C reproducer: https://syzkaller.appspot.com/x/repro.c?x=15bb1109e00000
IMPORTANT: if you fix the bug, please add the following tag to the commit:
Reported-by: syzbot+9d82b8de2992579da5d0@syzkaller.appspotmail.com
FAT-fs (loop0): error, invalid access to FAT (entry 0x00006500)
FAT-fs (loop0): Filesystem has been set read-only
=====================================================
BUG: KMSAN: uninit-value in fat_free_eofblocks fs/fat/inode.c:628 [inline]
BUG: KMSAN: uninit-value in fat_evict_inode+0x2f4/0x920 fs/fat/inode.c:658
CPU: 0 PID: 11199 Comm: syz-executor375 Not tainted 5.6.0-rc2-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Call Trace:
__dump_stack lib/dump_stack.c:77 [inline]
dump_stack+0x1c9/0x220 lib/dump_stack.c:118
kmsan_report+0xf7/0x1e0 mm/kmsan/kmsan_report.c:118
__msan_warning+0x58/0xa0 mm/kmsan/kmsan_instr.c:215
fat_free_eofblocks fs/fat/inode.c:628 [inline]
fat_evict_inode+0x2f4/0x920 fs/fat/inode.c:658
evict+0x4ab/0xe10 fs/inode.c:575
iput_final fs/inode.c:1571 [inline]
iput+0xa70/0xe10 fs/inode.c:1597
fat_build_inode+0x6a3/0x840 fs/fat/inode.c:610
vfat_mkdir+0x547/0x7d0 fs/fat/namei_vfat.c:871
vfs_mkdir+0x691/0x920 fs/namei.c:3889
do_mkdirat+0x39f/0x680 fs/namei.c:3912
__do_sys_mkdir fs/namei.c:3928 [inline]
__se_sys_mkdir fs/namei.c:3926 [inline]
__ia32_sys_mkdir+0x9f/0xd0 fs/namei.c:3926
do_syscall_32_irqs_on arch/x86/entry/common.c:339 [inline]
do_fast_syscall_32+0x3c7/0x6e0 arch/x86/entry/common.c:410
entry_SYSENTER_compat+0x68/0x77 arch/x86/entry/entry_64_compat.S:139
RIP: 0023:0xf7f1bd99
Code: 90 e8 0b 00 00 00 f3 90 0f ae e8 eb f9 8d 74 26 00 89 3c 24 c3 90 90 90 90 90 90 90 90 90 90 90 90 51 52 55 89 e5 0f 34 cd 80 <5d> 5a 59 c3 90 90 90 90 eb 0d 90 90 90 90 90 90 90 90 90 90 90 90
RSP: 002b:00000000ffb4ff4c EFLAGS: 00000292 ORIG_RAX: 0000000000000027
RAX: ffffffffffffffda RBX: 0000000020000740 RCX: 0000000000000000
RDX: 0000000000000000 RSI: 00000000ffb4ffbe RDI: 0000000000000001
RBP: 00000000000000c2 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000000
R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000
Uninit was created at:
kmsan_save_stack_with_flags+0x3c/0x90 mm/kmsan/kmsan.c:144
kmsan_internal_alloc_meta_for_pages mm/kmsan/kmsan_shadow.c:307 [inline]
kmsan_alloc_page+0x12a/0x310 mm/kmsan/kmsan_shadow.c:336
__alloc_pages_nodemask+0x5712/0x5e80 mm/page_alloc.c:4775
alloc_pages_current+0x67d/0x990 mm/mempolicy.c:2211
alloc_pages include/linux/gfp.h:534 [inline]
alloc_slab_page+0x111/0x12f0 mm/slub.c:1530
allocate_slab mm/slub.c:1675 [inline]
new_slab+0x2bc/0x1130 mm/slub.c:1741
new_slab_objects mm/slub.c:2492 [inline]
___slab_alloc+0x1533/0x1f30 mm/slub.c:2643
__slab_alloc mm/slub.c:2683 [inline]
slab_alloc_node mm/slub.c:2757 [inline]
slab_alloc mm/slub.c:2802 [inline]
kmem_cache_alloc+0xb23/0xd70 mm/slub.c:2807
fat_alloc_inode+0x58/0x120 fs/fat/inode.c:748
alloc_inode fs/inode.c:231 [inline]
new_inode_pseudo+0xb1/0x590 fs/inode.c:927
new_inode+0x5a/0x3d0 fs/inode.c:956
fat_fill_super+0x634b/0x89b0 fs/fat/inode.c:1844
vfat_fill_super+0xa6/0xc0 fs/fat/namei_vfat.c:1050
mount_bdev+0x654/0x880 fs/super.c:1417
vfat_mount+0xc9/0xe0 fs/fat/namei_vfat.c:1057
legacy_get_tree+0x169/0x2e0 fs/fs_context.c:622
vfs_get_tree+0xdd/0x580 fs/super.c:1547
do_new_mount fs/namespace.c:2822 [inline]
do_mount+0x365c/0x4ac0 fs/namespace.c:3107
__do_compat_sys_mount fs/compat.c:122 [inline]
__se_compat_sys_mount+0x3a8/0xa10 fs/compat.c:89
__ia32_compat_sys_mount+0x157/0x1b0 fs/compat.c:89
do_syscall_32_irqs_on arch/x86/entry/common.c:339 [inline]
do_fast_syscall_32+0x3c7/0x6e0 arch/x86/entry/common.c:410
entry_SYSENTER_compat+0x68/0x77 arch/x86/entry/entry_64_compat.S:139
=====================================================
prev parent reply other threads:[~2020-02-22 5:00 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-02-21 11:08 KMSAN: uninit-value in fat_evict_inode syzbot
2020-02-21 18:12 ` fat: Fix uninit-memory access for partial initialized inode OGAWA Hirofumi
2020-02-22 5:00 ` syzbot [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=0000000000002bf78e059f2303c5@google.com \
--to=syzbot+9d82b8de2992579da5d0@syzkaller.appspotmail.com \
--cc=akpm@linux-foundation.org \
--cc=glider@google.com \
--cc=hirofumi@mail.parknet.co.jp \
--cc=linux-kernel@vger.kernel.org \
--cc=syzkaller-bugs@googlegroups.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.