syzbot


BUG: unable to handle kernel NULL pointer dereference in direct_page_fault

Status: fixed on 2020/07/17 17:58
Subsystems: kvm
[Documentation on labels]
Reported-by: syzbot+20e4f970c302968f1d32@syzkaller.appspotmail.com
Fix commit: 3021e69219e2 kcov: check kcov_softirq in kcov_remote_stop()
First crash: 1380d, last: 1380d

Sample crash report:
BUG: kernel NULL pointer dereference, address: 0000000000000000
#PF: supervisor read access in kernel mode
#PF: error_code(0x0000) - not-present page
PGD 90c07067 P4D 90c07067 PUD 9ee3d067 PMD 0 
Oops: 0000 [#1] PREEMPT SMP KASAN
CPU: 1 PID: 15042 Comm: syz-executor.3 Not tainted 5.7.0-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
RIP: 0010:__read_once_size include/linux/compiler.h:252 [inline]
RIP: 0010:__sanitizer_cov_trace_pc+0x3f/0x60 kernel/kcov.c:202
Code: c2 00 01 ff 00 74 11 f7 c2 00 01 00 00 74 35 83 b9 04 14 00 00 00 74 2c 8b 91 e0 13 00 00 83 fa 02 75 21 48 8b 91 e8 13 00 00 <48> 8b 32 48 8d 7e 01 8b 89 e4 13 00 00 48 39 cf 73 08 48 89 44 f2
RSP: 0018:ffffc90003bdf7e8 EFLAGS: 00010246
RAX: ffffffff8117733f RBX: 0000000000000000 RCX: ffff888096976200
RDX: 0000000000000000 RSI: 0000000000000008 RDI: ffff888096976a64
RBP: ffff888059604270 R08: dffffc0000000000 R09: fffffbfff162e0c0
R10: fffffbfff162e0c0 R11: 0000000000000000 R12: ffff888059604240
R13: 0000000000000002 R14: ffff8880a862ba2c R15: dffffc0000000000
FS:  00007f1f5ef7c700(0000) GS:ffff8880ae900000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000000000000 CR3: 000000005f535000 CR4: 00000000001426e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 direct_page_fault+0xb7f/0x1c50 arch/x86/kvm/mmu/mmu.c:4118
 kvm_mmu_do_page_fault arch/x86/kvm/mmu.h:115 [inline]
 kvm_mmu_page_fault+0x13d/0xde0 arch/x86/kvm/mmu/mmu.c:5422
 vcpu_enter_guest+0x6666/0x89a0 arch/x86/kvm/x86.c:8604
 vcpu_run+0x352/0xcd0 arch/x86/kvm/x86.c:8669
 kvm_arch_vcpu_ioctl_run+0x451/0x8f0 arch/x86/kvm/x86.c:8890
 kvm_vcpu_ioctl+0x64f/0xa60 arch/x86/kvm/../../../virt/kvm/kvm_main.c:3163
 vfs_ioctl fs/ioctl.c:47 [inline]
 ksys_ioctl fs/ioctl.c:771 [inline]
 __do_sys_ioctl fs/ioctl.c:780 [inline]
 __se_sys_ioctl+0xf9/0x160 fs/ioctl.c:778
 do_syscall_64+0xf3/0x1b0 arch/x86/entry/common.c:295
 entry_SYSCALL_64_after_hwframe+0x49/0xb3
RIP: 0033:0x45ca59
Code: 0d b7 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 db b6 fb ff c3 66 2e 0f 1f 84 00 00 00 00
RSP: 002b:00007f1f5ef7bc78 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
RAX: ffffffffffffffda RBX: 00000000004e84e0 RCX: 000000000045ca59
RDX: 0000000000000000 RSI: 000000000000ae80 RDI: 0000000000000005
RBP: 000000000078bf00 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 00000000ffffffff
R13: 00000000000003cc R14: 00000000004c6799 R15: 00007f1f5ef7c6d4
Modules linked in:
CR2: 0000000000000000
---[ end trace 1972d280f93d7493 ]---
RIP: 0010:__read_once_size include/linux/compiler.h:252 [inline]
RIP: 0010:__sanitizer_cov_trace_pc+0x3f/0x60 kernel/kcov.c:202
Code: c2 00 01 ff 00 74 11 f7 c2 00 01 00 00 74 35 83 b9 04 14 00 00 00 74 2c 8b 91 e0 13 00 00 83 fa 02 75 21 48 8b 91 e8 13 00 00 <48> 8b 32 48 8d 7e 01 8b 89 e4 13 00 00 48 39 cf 73 08 48 89 44 f2
RSP: 0018:ffffc90003bdf7e8 EFLAGS: 00010246
RAX: ffffffff8117733f RBX: 0000000000000000 RCX: ffff888096976200
RDX: 0000000000000000 RSI: 0000000000000008 RDI: ffff888096976a64
RBP: ffff888059604270 R08: dffffc0000000000 R09: fffffbfff162e0c0
R10: fffffbfff162e0c0 R11: 0000000000000000 R12: ffff888059604240
R13: 0000000000000002 R14: ffff8880a862ba2c R15: dffffc0000000000
FS:  00007f1f5ef7c700(0000) GS:ffff8880ae900000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007efe480d2f68 CR3: 000000005f535000 CR4: 00000000001426e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2020/06/17 18:30 upstream 7ae77150d94d b9f3810b .config console log report ci-upstream-kasan-gce-smack-root
* Struck through repros no longer work on HEAD.