syzbot


WARNING in kvm_inject_emulated_page_fault

Status: fixed on 2020/07/17 17:58
Subsystems: kvm
[Documentation on labels]
Reported-by: syzbot+2a7156e11dc199bdbd8a@syzkaller.appspotmail.com
Fix commit: 7a35e515a705 KVM: VMX: Properly handle kvm_read/write_guest_virt*() result
First crash: 1426d, last: 1402d
Cause bisection: introduced by (bisect log) :
commit ee1fa209f5e5ca5c1e76c7aa1c2aab292f371f4a
Author: Junaid Shahid <junaids@google.com>
Date: Fri Mar 20 21:28:03 2020 +0000

  KVM: x86: Sync SPTEs when injecting page/EPT fault into L1

Crash: WARNING in kvm_inject_emulated_page_fault (log)
Repro: C syz .config
  
Discussions (3)
Title Replies (including bot) Last reply
[PATCH v2 1/2] KVM: nVMX: Properly handle kvm_read/write_guest_virt*() result 6 (6) 2020/06/08 08:20
[PATCH] KVM: nVMX: Inject #GP when nested_vmx_get_vmptr() fails to read guest memory 9 (9) 2020/06/04 18:10
WARNING in kvm_inject_emulated_page_fault 3 (5) 2020/06/04 13:51

Sample crash report:
L1TF CPU bug present and SMT on, data leak possible. See CVE-2018-3646 and https://www.kernel.org/doc/html/latest/admin-guide/hw-vuln/l1tf.html for details.
------------[ cut here ]------------
WARNING: CPU: 1 PID: 6819 at arch/x86/kvm/x86.c:618 kvm_inject_emulated_page_fault+0x210/0x290 arch/x86/kvm/x86.c:618
Kernel panic - not syncing: panic_on_warn set ...
CPU: 1 PID: 6819 Comm: syz-executor084 Not tainted 5.7.0-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+0x188/0x20d lib/dump_stack.c:118
 panic+0x2e3/0x75c kernel/panic.c:221
 __warn.cold+0x2f/0x35 kernel/panic.c:582
 report_bug+0x27b/0x2f0 lib/bug.c:195
 fixup_bug arch/x86/kernel/traps.c:105 [inline]
 fixup_bug arch/x86/kernel/traps.c:100 [inline]
 do_error_trap+0x12b/0x220 arch/x86/kernel/traps.c:197
 do_invalid_op+0x32/0x40 arch/x86/kernel/traps.c:216
 invalid_op+0x23/0x30 arch/x86/entry/entry_64.S:1027
RIP: 0010:kvm_inject_emulated_page_fault+0x210/0x290 arch/x86/kvm/x86.c:618
Code: 00 fc ff df 48 89 fa 48 c1 ea 03 80 3c 02 00 75 79 48 8b 53 08 4c 89 f6 48 89 ef e8 da 0f 0c 00 e9 10 ff ff ff e8 c0 ad 68 00 <0f> 0b e9 3a fe ff ff 4c 89 e7 e8 e1 c2 a7 00 e9 5d fe ff ff 48 89
RSP: 0018:ffffc900018f7968 EFLAGS: 00010293
RAX: ffff88809536c580 RBX: ffffc900018f79e0 RCX: ffffffff810b1f37
RDX: 0000000000000000 RSI: ffffffff810b2100 RDI: 0000000000000001
RBP: ffff888094e80040 R08: ffff88809536c580 R09: fffff5200031ef58
R10: ffffc900018f7abf R11: fffff5200031ef57 R12: 0000000000000000
R13: 0000000000000001 R14: ffffc900018f7ab8 R15: ffff888094e80380
 nested_vmx_get_vmptr+0x1f9/0x2a0 arch/x86/kvm/vmx/nested.c:4638
 handle_vmon arch/x86/kvm/vmx/nested.c:4767 [inline]
 handle_vmon+0x168/0x3a0 arch/x86/kvm/vmx/nested.c:4728
 vmx_handle_exit+0x29c/0x1260 arch/x86/kvm/vmx/vmx.c:6067
 vcpu_enter_guest arch/x86/kvm/x86.c:8604 [inline]
 vcpu_run arch/x86/kvm/x86.c:8669 [inline]
 kvm_arch_vcpu_ioctl_run+0x3023/0x69f0 arch/x86/kvm/x86.c:8890
 kvm_vcpu_ioctl+0x46a/0xe20 arch/x86/kvm/../../../virt/kvm/kvm_main.c:3163
 vfs_ioctl fs/ioctl.c:47 [inline]
 ksys_ioctl+0x11a/0x180 fs/ioctl.c:771
 __do_sys_ioctl fs/ioctl.c:780 [inline]
 __se_sys_ioctl fs/ioctl.c:778 [inline]
 __x64_sys_ioctl+0x6f/0xb0 fs/ioctl.c:778
 do_syscall_64+0xf6/0x7d0 arch/x86/entry/common.c:295
 entry_SYSCALL_64_after_hwframe+0x49/0xb3
RIP: 0033:0x443569
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 1b 0c fc ff c3 66 2e 0f 1f 84 00 00 00 00
RSP: 002b:00007ffc83d85688 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
RAX: ffffffffffffffda RBX: 00007ffc83d85690 RCX: 0000000000443569
RDX: 0000000000000000 RSI: 000000000000ae80 RDI: 0000000000000006
RBP: 0000000000000000 R08: 0000000020003800 R09: 0000000000400eb0
R10: 00007ffc83d83af0 R11: 0000000000000246 R12: 0000000000404610
R13: 00000000004046a0 R14: 0000000000000000 R15: 0000000000000000
Kernel Offset: disabled
Rebooting in 86400 seconds..

Crashes (20):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2020/06/06 04:38 upstream 7ae77150d94d f243c88f .config console log report syz C ci-upstream-kasan-gce-root
2020/06/05 03:23 upstream acf25aa66371 6720fdef .config console log report syz C ci-upstream-kasan-gce-selinux-root
2020/06/04 10:44 upstream cb8e59cc8720 b0d1c0d5 .config console log report syz C ci-upstream-kasan-gce-smack-root
2020/06/04 08:49 upstream cb8e59cc8720 b0d1c0d5 .config console log report syz C ci-upstream-kasan-gce
2020/06/24 01:08 upstream 7ae77150d94d 54566aff .config console log report ci-upstream-kasan-gce-smack-root
2020/06/21 16:38 upstream 7ae77150d94d 4f2acff9 .config console log report ci-upstream-kasan-gce
2020/06/19 22:31 upstream 7ae77150d94d 81abc331 .config console log report ci-upstream-kasan-gce-root
2020/06/19 22:25 upstream 7ae77150d94d 81abc331 .config console log report ci-upstream-kasan-gce-smack-root
2020/06/19 22:25 upstream 7ae77150d94d 81abc331 .config console log report ci-upstream-kasan-gce
2020/06/16 13:16 upstream 7ae77150d94d baca2611 .config console log report ci-upstream-kasan-gce-selinux-root
2020/06/13 17:38 upstream 7ae77150d94d dbce178a .config console log report ci-upstream-kasan-gce-smack-root
2020/06/11 14:54 upstream 7ae77150d94d 3ab7a05a .config console log report ci-upstream-kasan-gce
2020/06/07 11:35 upstream 7ae77150d94d 2c2b926c .config console log report ci-upstream-kasan-gce-smack-root
2020/06/07 01:47 upstream 7ae77150d94d e6b89e4e .config console log report ci-upstream-kasan-gce-smack-root
2020/06/06 23:47 upstream 7ae77150d94d e6b89e4e .config console log report ci-upstream-kasan-gce
2020/06/04 07:35 upstream cb8e59cc8720 b0d1c0d5 .config console log report ci-upstream-kasan-gce
2020/06/04 05:57 upstream cb8e59cc8720 b0d1c0d5 .config console log report ci-upstream-kasan-gce
2020/06/20 00:17 linux-next e7b08814b16b 81abc331 .config console log report ci-upstream-linux-next-kasan-gce-root
2020/06/11 15:08 linux-next e7b08814b16b 3ab7a05a .config console log report ci-upstream-linux-next-kasan-gce-root
2020/05/31 06:29 linux-next e7b08814b16b 6f3e1c7c .config console log report ci-upstream-linux-next-kasan-gce-root
* Struck through repros no longer work on HEAD.