2018-07-06 22:40:05

by syzbot

[permalink] [raw]
Subject: general protection fault in do_remount_sb

Hello,

syzbot found the following crash on:

HEAD commit: 526674536360 Add linux-next specific files for 20180706
git tree: linux-next
console output: https://syzkaller.appspot.com/x/log.txt?x=1642b734400000
kernel config: https://syzkaller.appspot.com/x/.config?x=c8d1cfc0cb798e48
dashboard link: https://syzkaller.appspot.com/bug?extid=049ea4b3691673030783
compiler: gcc (GCC) 8.0.1 20180413 (experimental)
syzkaller repro:https://syzkaller.appspot.com/x/repro.syz?x=118bf170400000
C reproducer: https://syzkaller.appspot.com/x/repro.c?x=1783690c400000

IMPORTANT: if you fix the bug, please add the following tag to the commit:
Reported-by: [email protected]

random: sshd: uninitialized urandom read (32 bytes read)
random: sshd: uninitialized urandom read (32 bytes read)
random: sshd: uninitialized urandom read (32 bytes read)
kasan: CONFIG_KASAN_INLINE enabled
kasan: GPF could be caused by NULL-ptr deref or user memory access
general protection fault: 0000 [#1] SMP KASAN
CPU: 1 PID: 4462 Comm: syz-executor233 Not tainted
4.18.0-rc3-next-20180706+ #1
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS
Google 01/01/2011
RIP: 0010:do_remount_sb+0x371/0x850 fs/super.c:992
Code: ff ff ff e8 01 85 fa 05 41 89 c5 48 8b 85 30 ff ff ff 48 8d b8 e0 00
00 00 48 b8 00 00 00 00 00 fc ff df 48 89 fa 48 c1 ea 03 <0f> b6 04 02 84
c0 74 08 3c 03 0f 8e b5 03 00 00 48 8b 85 30 ff ff
RSP: 0018:ffff8801ac117a38 EFLAGS: 00010202
RAX: dffffc0000000000 RBX: ffff8801caf68e40 RCX: ffffffff81c5edb2
RDX: 000000000000001c RSI: ffffffff81edb5ef RDI: 00000000000000e0
RBP: ffff8801ac117b40 R08: ffff8801ac1e2140 R09: fffffbfff11c24e5
R10: fffffbfff11c24e5 R11: ffffffff88e1272b R12: ffff8801ac117b18
R13: 0000000000000000 R14: 0000000000000001 R15: 0000000000000000
FS: 0000000001440880(0000) GS:ffff8801daf00000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000020000680 CR3: 00000001ac28f000 CR4: 00000000001406e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
do_umount fs/namespace.c:1467 [inline]
ksys_umount+0xfa7/0x12f0 fs/namespace.c:1585
__do_sys_umount fs/namespace.c:1596 [inline]
__se_sys_umount fs/namespace.c:1594 [inline]
__x64_sys_umount+0x54/0x80 fs/namespace.c:1594
do_syscall_64+0x1b9/0x820 arch/x86/entry/common.c:290
entry_SYSCALL_64_after_hwframe+0x49/0xbe
RIP: 0033:0x440069
Code: 18 89 d0 c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 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 fb 13 fc ff c3 66 2e 0f 1f 84 00 00 00 00
RSP: 002b:00007ffded829168 EFLAGS: 00000217 ORIG_RAX: 00000000000000a6
RAX: ffffffffffffffda RBX: 0030656c69662f2e RCX: 0000000000440069
RDX: 0000000000440069 RSI: 0000000000000000 RDI: 0000000020000040
RBP: 00000000006ca018 R08: 00000000004002c8 R09: 00000000004002c8
R10: 00000000004002c8 R11: 0000000000000217 R12: 00000000004018f0
R13: 0000000000401980 R14: 0000000000000000 R15: 0000000000000000
Modules linked in:
Dumping ftrace buffer:
(ftrace buffer empty)
---[ end trace e836fc74e88778be ]---
RIP: 0010:do_remount_sb+0x371/0x850 fs/super.c:992
Code: ff ff ff e8 01 85 fa 05 41 89 c5 48 8b 85 30 ff ff ff 48 8d b8 e0 00
00 00 48 b8 00 00 00 00 00 fc ff df 48 89 fa 48 c1 ea 03 <0f> b6 04 02 84
c0 74 08 3c 03 0f 8e b5 03 00 00 48 8b 85 30 ff ff
RSP: 0018:ffff8801ac117a38 EFLAGS: 00010202
RAX: dffffc0000000000 RBX: ffff8801caf68e40 RCX: ffffffff81c5edb2
RDX: 000000000000001c RSI: ffffffff81edb5ef RDI: 00000000000000e0
RBP: ffff8801ac117b40 R08: ffff8801ac1e2140 R09: fffffbfff11c24e5
R10: fffffbfff11c24e5 R11: ffffffff88e1272b R12: ffff8801ac117b18
R13: 0000000000000000 R14: 0000000000000001 R15: 0000000000000000
FS: 0000000001440880(0000) GS:ffff8801daf00000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000020000680 CR3: 00000001ac28f000 CR4: 00000000001406e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400


---
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 [email protected].

syzbot will keep track of this bug report. See:
https://goo.gl/tpsmEJ#bug-status-tracking for how to communicate with
syzbot.
syzbot can test patches for this bug, for details see:
https://goo.gl/tpsmEJ#testing-patches


2018-07-17 18:53:16

by Eric Biggers

[permalink] [raw]
Subject: Re: general protection fault in do_remount_sb

Hi David, this looks like another bug in the fs_context patchset.
do_remount_sb() is dereferencing a NULL fs_context.

On Fri, Jul 06, 2018 at 03:39:03PM -0700, syzbot wrote:
> Hello,
>
> syzbot found the following crash on:
>
> HEAD commit: 526674536360 Add linux-next specific files for 20180706
> git tree: linux-next
> console output: https://syzkaller.appspot.com/x/log.txt?x=1642b734400000
> kernel config: https://syzkaller.appspot.com/x/.config?x=c8d1cfc0cb798e48
> dashboard link: https://syzkaller.appspot.com/bug?extid=049ea4b3691673030783
> compiler: gcc (GCC) 8.0.1 20180413 (experimental)
> syzkaller repro:https://syzkaller.appspot.com/x/repro.syz?x=118bf170400000
> C reproducer: https://syzkaller.appspot.com/x/repro.c?x=1783690c400000
>
> IMPORTANT: if you fix the bug, please add the following tag to the commit:
> Reported-by: [email protected]
>
> random: sshd: uninitialized urandom read (32 bytes read)
> random: sshd: uninitialized urandom read (32 bytes read)
> random: sshd: uninitialized urandom read (32 bytes read)
> kasan: CONFIG_KASAN_INLINE enabled
> kasan: GPF could be caused by NULL-ptr deref or user memory access
> general protection fault: 0000 [#1] SMP KASAN
> CPU: 1 PID: 4462 Comm: syz-executor233 Not tainted 4.18.0-rc3-next-20180706+
> #1
> Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS
> Google 01/01/2011
> RIP: 0010:do_remount_sb+0x371/0x850 fs/super.c:992
> Code: ff ff ff e8 01 85 fa 05 41 89 c5 48 8b 85 30 ff ff ff 48 8d b8 e0 00
> 00 00 48 b8 00 00 00 00 00 fc ff df 48 89 fa 48 c1 ea 03 <0f> b6 04 02 84 c0
> 74 08 3c 03 0f 8e b5 03 00 00 48 8b 85 30 ff ff
> RSP: 0018:ffff8801ac117a38 EFLAGS: 00010202
> RAX: dffffc0000000000 RBX: ffff8801caf68e40 RCX: ffffffff81c5edb2
> RDX: 000000000000001c RSI: ffffffff81edb5ef RDI: 00000000000000e0
> RBP: ffff8801ac117b40 R08: ffff8801ac1e2140 R09: fffffbfff11c24e5
> R10: fffffbfff11c24e5 R11: ffffffff88e1272b R12: ffff8801ac117b18
> R13: 0000000000000000 R14: 0000000000000001 R15: 0000000000000000
> FS: 0000000001440880(0000) GS:ffff8801daf00000(0000) knlGS:0000000000000000
> CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
> CR2: 0000000020000680 CR3: 00000001ac28f000 CR4: 00000000001406e0
> DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
> DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
> Call Trace:
> do_umount fs/namespace.c:1467 [inline]
> ksys_umount+0xfa7/0x12f0 fs/namespace.c:1585
> __do_sys_umount fs/namespace.c:1596 [inline]
> __se_sys_umount fs/namespace.c:1594 [inline]
> __x64_sys_umount+0x54/0x80 fs/namespace.c:1594
> do_syscall_64+0x1b9/0x820 arch/x86/entry/common.c:290
> entry_SYSCALL_64_after_hwframe+0x49/0xbe
> RIP: 0033:0x440069
> Code: 18 89 d0 c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 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 fb 13 fc ff c3 66 2e 0f 1f 84 00 00 00 00
> RSP: 002b:00007ffded829168 EFLAGS: 00000217 ORIG_RAX: 00000000000000a6
> RAX: ffffffffffffffda RBX: 0030656c69662f2e RCX: 0000000000440069
> RDX: 0000000000440069 RSI: 0000000000000000 RDI: 0000000020000040
> RBP: 00000000006ca018 R08: 00000000004002c8 R09: 00000000004002c8
> R10: 00000000004002c8 R11: 0000000000000217 R12: 00000000004018f0
> R13: 0000000000401980 R14: 0000000000000000 R15: 0000000000000000
> Modules linked in:
> Dumping ftrace buffer:
> (ftrace buffer empty)
> ---[ end trace e836fc74e88778be ]---
> RIP: 0010:do_remount_sb+0x371/0x850 fs/super.c:992
> Code: ff ff ff e8 01 85 fa 05 41 89 c5 48 8b 85 30 ff ff ff 48 8d b8 e0 00
> 00 00 48 b8 00 00 00 00 00 fc ff df 48 89 fa 48 c1 ea 03 <0f> b6 04 02 84 c0
> 74 08 3c 03 0f 8e b5 03 00 00 48 8b 85 30 ff ff
> RSP: 0018:ffff8801ac117a38 EFLAGS: 00010202
> RAX: dffffc0000000000 RBX: ffff8801caf68e40 RCX: ffffffff81c5edb2
> RDX: 000000000000001c RSI: ffffffff81edb5ef RDI: 00000000000000e0
> RBP: ffff8801ac117b40 R08: ffff8801ac1e2140 R09: fffffbfff11c24e5
> R10: fffffbfff11c24e5 R11: ffffffff88e1272b R12: ffff8801ac117b18
> R13: 0000000000000000 R14: 0000000000000001 R15: 0000000000000000
> FS: 0000000001440880(0000) GS:ffff8801daf00000(0000) knlGS:0000000000000000
> CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
> CR2: 0000000020000680 CR3: 00000001ac28f000 CR4: 00000000001406e0
> DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
> DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
>
>
> ---
> 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 [email protected].
>
> syzbot will keep track of this bug report. See:
> https://goo.gl/tpsmEJ#bug-status-tracking for how to communicate with
> syzbot.
> syzbot can test patches for this bug, for details see:
> https://goo.gl/tpsmEJ#testing-patches
>
> --
> 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 [email protected].
> To view this discussion on the web visit https://groups.google.com/d/msgid/syzkaller-bugs/000000000000b2425905705c540f%40google.com.
> For more options, visit https://groups.google.com/d/optout.