KMSAN: uninit-value in p9_client_rpc

24 views
Skip to first unread message

syzbot

unread,
Jul 10, 2018, 2:41:02 PM7/10/18
to da...@davemloft.net, eri...@gmail.com, linux-...@vger.kernel.org, lu...@ionkov.net, net...@vger.kernel.org, rmin...@sandia.gov, syzkall...@googlegroups.com, v9fs-de...@lists.sourceforge.net
Hello,

syzbot found the following crash on:

HEAD commit: b64f7ec04e12 kmsan: implement kmsan_memmove_shadow() and k..
git tree: https://github.com/google/kmsan.git/master
console output: https://syzkaller.appspot.com/x/log.txt?x=127179b2400000
kernel config: https://syzkaller.appspot.com/x/.config?x=93d57043084eee38
dashboard link: https://syzkaller.appspot.com/bug?extid=4de40388f584432bf004
compiler: clang version 7.0.0 (trunk 334104)

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

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

==================================================================
BUG: KMSAN: uninit-value in p9_client_rpc+0x194c/0x1dc0 net/9p/client.c:818
CPU: 0 PID: 14601 Comm: syz-executor4 Not tainted 4.18.0-rc4+ #24
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+0x185/0x1e0 lib/dump_stack.c:113
kmsan_report+0x195/0x2c0 mm/kmsan/kmsan.c:1092
__msan_warning_32+0x7d/0xe0 mm/kmsan/kmsan_instr.c:640
p9_client_rpc+0x194c/0x1dc0 net/9p/client.c:818
p9_client_attach+0x35b/0xc30 net/9p/client.c:1147
v9fs_session_init+0x24b9/0x2970 fs/9p/v9fs.c:449
v9fs_mount+0x107/0x11b0 fs/9p/vfs_super.c:135
mount_fs+0x29b/0x780 fs/super.c:1277
vfs_kern_mount+0x222/0x990 fs/namespace.c:1037
do_new_mount fs/namespace.c:2518 [inline]
do_mount+0xd30/0x5310 fs/namespace.c:2848
ksys_mount+0x32e/0x3d0 fs/namespace.c:3064
__do_sys_mount fs/namespace.c:3078 [inline]
__se_sys_mount fs/namespace.c:3075 [inline]
__x64_sys_mount+0x157/0x1c0 fs/namespace.c:3075
do_syscall_64+0x15b/0x230 arch/x86/entry/common.c:290
entry_SYSCALL_64_after_hwframe+0x63/0xe7
RIP: 0033:0x455e29
Code: 1d ba fb ff c3 66 2e 0f 1f 84 00 00 00 00 00 66 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 0f 83 eb b9 fb ff c3 66 2e 0f 1f 84 00 00 00 00
RSP: 002b:00007f2b81f7fc68 EFLAGS: 00000246 ORIG_RAX: 00000000000000a5
RAX: ffffffffffffffda RBX: 00007f2b81f806d4 RCX: 0000000000455e29
RDX: 0000000020000080 RSI: 0000000020000000 RDI: 0000000000000000
RBP: 000000000072bea0 R08: 0000000020000380 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 00000000ffffffff
R13: 00000000004c05ca R14: 00000000004d0070 R15: 0000000000000000

Local variable description: ----ecode.i@p9_client_rpc
Variable was created at:
p9_client_rpc+0x183/0x1dc0 net/9p/client.c:750
p9_client_attach+0x35b/0xc30 net/9p/client.c:1147
==================================================================


---
This bug 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 bug report. See:
https://goo.gl/tpsmEJ#bug-status-tracking for how to communicate with
syzbot.

syzbot

unread,
Jul 12, 2018, 5:24:02 AM7/12/18
to da...@davemloft.net, eri...@gmail.com, linux-...@vger.kernel.org, lu...@ionkov.net, net...@vger.kernel.org, rmin...@sandia.gov, syzkall...@googlegroups.com, v9fs-de...@lists.sourceforge.net
syzbot has found a reproducer for the following crash on:

HEAD commit: b64f7ec04e12 kmsan: implement kmsan_memmove_shadow() and k..
git tree: https://github.com/google/kmsan.git/master
console output: https://syzkaller.appspot.com/x/log.txt?x=12f6791c400000
syzkaller repro:https://syzkaller.appspot.com/x/repro.syz?x=147c36dc400000
C reproducer: https://syzkaller.appspot.com/x/repro.c?x=14e87044400000

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

FS-Cache: O-key=[10] '34323934373135343132'
FS-Cache: N-cookie c=(____ptrval____) [p=(____ptrval____) fl=2 nc=0 na=1]
FS-Cache: N-cookie d=(____ptrval____) n=(____ptrval____)
FS-Cache: N-key=[10] '34323934373135343132'
==================================================================
BUG: KMSAN: uninit-value in p9_client_rpc+0x194c/0x1dc0 net/9p/client.c:818
CPU: 1 PID: 4620 Comm: syz-executor262 Not tainted 4.18.0-rc4+ #24
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+0x185/0x1e0 lib/dump_stack.c:113
kmsan_report+0x195/0x2c0 mm/kmsan/kmsan.c:1092
__msan_warning_32+0x7d/0xe0 mm/kmsan/kmsan_instr.c:640
p9_client_rpc+0x194c/0x1dc0 net/9p/client.c:818
p9_client_attach+0x35b/0xc30 net/9p/client.c:1147
v9fs_session_init+0x24b9/0x2970 fs/9p/v9fs.c:449
v9fs_mount+0x107/0x11b0 fs/9p/vfs_super.c:135
mount_fs+0x29b/0x780 fs/super.c:1277
vfs_kern_mount+0x222/0x990 fs/namespace.c:1037
do_new_mount fs/namespace.c:2518 [inline]
do_mount+0xd30/0x5310 fs/namespace.c:2848
ksys_mount+0x32e/0x3d0 fs/namespace.c:3064
__do_sys_mount fs/namespace.c:3078 [inline]
__se_sys_mount fs/namespace.c:3075 [inline]
__x64_sys_mount+0x157/0x1c0 fs/namespace.c:3075
do_syscall_64+0x15b/0x230 arch/x86/entry/common.c:290
entry_SYSCALL_64_after_hwframe+0x63/0xe7
RIP: 0033:0x445f79
Code: e8 cc e6 ff ff 48 83 c4 18 c3 0f 1f 80 00 00 00 00 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 0f 83 3b 0d fc ff c3 66 2e 0f 1f 84 00 00 00 00
RSP: 002b:00007ffb83104da8 EFLAGS: 00000202 ORIG_RAX: 00000000000000a5
RAX: ffffffffffffffda RBX: 00000000006dbc3c RCX: 0000000000445f79
RDX: 0000000020000180 RSI: 00000000200000c0 RDI: 0000000000000000
RBP: 00000000006dbc38 R08: 00000000200001c0 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000202 R12: 0030656c69662f2e
R13: 64663d736e617274 R14: 7974697275636573 R15: 0000000000000001

Alexander Potapenko

unread,
Jul 12, 2018, 9:36:33 AM7/12/18
to syzbot+4de403...@syzkaller.appspotmail.com, David Miller, eri...@gmail.com, LKML, lu...@ionkov.net, Networking, rmin...@sandia.gov, syzkall...@googlegroups.com, v9fs-de...@lists.sourceforge.net
FWIW the bug occurs here:
https://elixir.bootlin.com/linux/latest/source/net/9p/client.c#L560

} else {
err = p9pdu_readf(req->rc, c->proto_version, "d", &ecode);
err = -ecode;

p9_debug(P9_DEBUG_9P, "<<< RLERROR (%d)\n", -ecode);
}

When p9pdu_readf() fails with -EFAULT, |ecode| may remain uninitialized.
We need to check the value of |err| before assigning |-ecode| to it.

> --
> You received this message because you are subscribed to the Google Groups "syzkaller-bugs" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to syzkaller-bug...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/syzkaller-bugs/00000000000077da4b0570c9eccc%40google.com.
> For more options, visit https://groups.google.com/d/optout.



--
Alexander Potapenko
Software Engineer

Google Germany GmbH
Erika-Mann-Straße, 33
80636 München

Geschäftsführer: Paul Manicle, Halimah DeLaine Prado
Registergericht und -nummer: Hamburg, HRB 86891
Sitz der Gesellschaft: Hamburg

syzbot

unread,
Mar 29, 2023, 11:29:41 AM3/29/23
to gli...@google.com, syzkall...@googlegroups.com
Auto-closing this bug as obsolete.
No recent activity, existing reproducers are no longer triggering the issue.
Reply all
Reply to author
Forward
0 new messages