Re: BUG: unable to handle kernel paging request in ttwu_do_wakeup

From: Dmitry Vyukov
Date: Tue Dec 19 2017 - 07:15:34 EST


On Sun, Dec 3, 2017 at 3:24 PM, syzbot
<bot+0b0000a79e0669bc4404616e242d0e14fe8c8a28@xxxxxxxxxxxxxxxxxxxxxxxxx>
wrote:
> Hello,
>
> syzkaller hit the following crash on
> fb20eb9d798d2f4c1a75b7fe981d72dfa8d7270d
> git://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/master
> compiler: gcc (GCC) 7.1.1 20170620
> .config is attached
> Raw console output is attached.
>
> Unfortunately, I don't have any reproducer for this bug yet.
>
>
> *** Guest State ***
> CR0: actual=0x0000000080000031, shadow=0x0000000060000010,
> gh_mask=fffffffffffffff7
> BUG: unable to handle kernel paging request at 00000000e6c759ad
> IP: ttwu_do_wakeup+0xa4/0x710 kernel/sched/core.c:1677
> PGD 5e28067 P4D 5e28067 PUD 5e2a067 PMD 0
> Oops: 0002 [#1] SMP KASAN
> Dumping ftrace buffer:
> (ftrace buffer empty)
> Modules linked in:
> CPU: 1 PID: 13428 Comm: syz-executor2 Not tainted 4.15.0-rc1-next-20171201+
> #57
> Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS
> Google 01/01/2011
> task: 00000000688ba51c task.stack: 0000000005a21800
> RIP: 0010:ttwu_do_wakeup+0xa4/0x710 kernel/sched/core.c:1677
> RSP: 0018:ffff8801db507620 EFLAGS: 00010046
> RAX: 1ffff1003a0a0ca1 RBX: ffff8801db527900 RCX: ffff8801db5282e8
> RDX: 1ffff1003b6a5062 RSI: ffff8801db527918 RDI: ffff8801d0506508
> RBP: ffff8801db507700 R08: 1ffffffff0a54f65 R09: ffff8801cac9e130
> R10: 1ffff1003b6a0e9f R11: 0000000000000006 R12: 1ffff1003b6a0ec7
> R13: ffff8801d0506500 R14: ffff8801db5076d8 R15: dffffc0000000000
> FS: 00007f56c3d99700(0000) GS:ffff8801db500000(0000) knlGS:0000000000000000
> CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
> CR2: fffffffffffffff8 CR3: 00000001d3853000 CR4: 00000000001426e0
> Call Trace:
> <IRQ>
> ttwu_do_activate+0x151/0x200 kernel/sched/core.c:1722
> ttwu_queue kernel/sched/core.c:1866 [inline]
> try_to_wake_up+0xa8d/0x1600 kernel/sched/core.c:2079
> default_wake_function+0x30/0x50 kernel/sched/core.c:3629
> autoremove_wake_function+0x78/0x350 kernel/sched/wait.c:377
> __wake_up_common+0x18e/0x780 kernel/sched/wait.c:97
> __wake_up_common_lock+0x1b4/0x310 kernel/sched/wait.c:125
> __wake_up+0xe/0x10 kernel/sched/wait.c:149
> wake_up_klogd_work_func+0x4a/0x70 kernel/printk/printk.c:2699
> irq_work_run_list+0x184/0x240 kernel/irq_work.c:155
> irq_work_run+0x31/0x50 kernel/irq_work.c:171
> flush_smp_call_function_queue+0x288/0x570 kernel/smp.c:257
> generic_smp_call_function_single_interrupt+0x13/0x30 kernel/smp.c:192
> smp_call_function_single_interrupt+0x103/0x640 arch/x86/kernel/smp.c:295
> call_function_single_interrupt+0xa9/0xb0 arch/x86/entry/entry_64.S:929
> </IRQ>
> RIP: 0010:arch_local_irq_restore arch/x86/include/asm/paravirt.h:777
> [inline]
> RIP: 0010:console_unlock+0x954/0xd70 kernel/printk/printk.c:2235
> RSP: 0018:ffff8801ccf37338 EFLAGS: 00000212 ORIG_RAX: ffffffffffffff04
> RAX: 0000000000010000 RBX: 0000000000000000 RCX: ffffffff8159c42b
> RDX: 000000000000693f RSI: ffffc90001fc6000 RDI: 0000000000000212
> RBP: ffff8801ccf37420 R08: 1ffff100399e6e35 R09: 0000000000000000
> R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000000
> R13: 0000000000000000 R14: dffffc0000000000 R15: ffffffff83a24260
> vprintk_emit+0x4ad/0x590 kernel/printk/printk.c:1757
> vprintk_default+0x28/0x30 kernel/printk/printk.c:1796
> vprintk_func+0x57/0xc0 kernel/printk/printk_safe.c:379
> printk+0xaa/0xca kernel/printk/printk.c:1829
> dump_vmcs arch/x86/kvm/vmx.c:8677 [inline]
> vmx_handle_exit+0xbee/0x1ce0 arch/x86/kvm/vmx.c:8832
> vcpu_enter_guest arch/x86/kvm/x86.c:7084 [inline]
> vcpu_run arch/x86/kvm/x86.c:7146 [inline]
> kvm_arch_vcpu_ioctl_run+0x1cb4/0x5c60 arch/x86/kvm/x86.c:7314
> kvm_vcpu_ioctl+0x64c/0x1010 arch/x86/kvm/../../../virt/kvm/kvm_main.c:2574
> vfs_ioctl fs/ioctl.c:46 [inline]
> do_vfs_ioctl+0x1b1/0x1530 fs/ioctl.c:686
> SYSC_ioctl fs/ioctl.c:701 [inline]
> SyS_ioctl+0x8f/0xc0 fs/ioctl.c:692
> entry_SYSCALL_64_fastpath+0x1f/0x96
> RIP: 0033:0x4529d9
> RSP: 002b:00007f56c3d98c58 EFLAGS: 00000212 ORIG_RAX: 0000000000000010
> RAX: ffffffffffffffda RBX: 00007f56c3d97810 RCX: 00000000004529d9
> RDX: 0000000000000000 RSI: 000000000000ae80 RDI: 0000000000000018
> RBP: 0000000000000000 R08: 0000000000000000 R09: 0000000000000000
> R10: 0000000000000000 R11: 0000000000000212 R12: 000000000000001a
> R13: 0000000020960000 R14: 00007f56c3d996d4 R15: 0000000000000000
> Code: f2 c7 40 10 f3 f3 f3 f3 e8 2a fc ff ff 49 8d 7d 08 48 89 f8 48 c1 e8
> 03 42 80 3c 38 00 0f 85 46 06 00 00 49 c7 45 08 00 00 00 00 <cc> 1f 44 00 00
> 65 8b 05 30 cf b4 7e 89 c0 48 0f a3 05 b6 64 12
> RIP: ttwu_do_wakeup+0xa4/0x710 kernel/sched/core.c:1677 RSP:
> ffff8801db507620
> CR2: fffffffffffffff8
> ---[ end trace 4761885c37033818 ]---


#syz dup: BUG: unable to handle kernel paging request in __switch_to

> ---
> This bug is generated by a dumb bot. It may contain errors.
> See https://goo.gl/tpsmEJ for details.
> Direct all questions to syzkaller@xxxxxxxxxxxxxxxxx
> Please credit me with: Reported-by: syzbot <syzkaller@xxxxxxxxxxxxxxxx>
>
> syzbot will keep track of this bug report.
> Once a fix for this bug is committed, please reply to this email with:
> #syz fix: exact-commit-title
> To mark this as a duplicate of another syzbot report, please reply with:
> #syz dup: exact-subject-of-another-report
> If it's a one-off invalid bug report, please reply with:
> #syz invalid
> Note: if the crash happens again, it will cause creation of a new bug
> report.
> Note: all commands must start from beginning of the line in the email body.
>
> --
> 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-bugs+unsubscribe@xxxxxxxxxxxxxxxxx
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/syzkaller-bugs/001a113fbf50714a80055f705a00%40google.com.
> For more options, visit https://groups.google.com/d/optout.