CVE-2026-64604: KVM: VMX: Grab vmcs12 on CR8 interception update iff vCPU is in guest mode
In the Linux kernel, the following vulnerability has been resolved:
KVM: VMX: Grab vmcs12 on CR8 interception update iff vCPU is in guest mode
When updating CR8 intercepts, get vmcs12 if and only if the vCPU is in guest mode so that a future change can have update CR8 intercepts during vCPU creation, without running afoul of getvmcs12()'s lockdep assertion.
------------[ cut here ]------------ debuglocks && !(lockisheld(&(&vcpu->mutex)->depmap) || !refcountread(&vcpu->kvm->userscount)) WARNING: arch/x86/kvm/vmx/nested.h:61 at getvmcs12 arch/x86/kvm/vmx/nested.h:60 [inline], CPU#0: syz.2.19/5879 WARNING: arch/x86/kvm/vmx/nested.h:61 at vmxupdatecr8intercept+0x3de/0x4e0 arch/x86/kvm/vmx/vmx.c:6879, CPU#0: syz.2.19/5879 Modules linked in: CPU: 0 UID: 0 PID: 5879 Comm: syz.2.19 Not tainted syzkaller #0 PREEMPT(full) Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.2-debian-1.16.2-1 04/01/2014 RIP: 0010:getvmcs12 arch/x86/kvm/vmx/nested.h:60 [inline] RIP: 0010:vmxupdatecr8intercept+0x3de/0x4e0 arch/x86/kvm/vmx/vmx.c:6879 Call Trace: <TASK> apicupdateppr arch/x86/kvm/lapic.c:984 [inline] kvmlapicreset+0x1c24/0x2980 arch/x86/kvm/lapic.c:3023 kvmvcpureset+0x44c/0x1bf0 arch/x86/kvm/x86.c:12986 kvmarchvcpucreate+0x746/0x8b0 arch/x86/kvm/x86.c:12847 kvmvmioctlcreatevcpu+0x428/0x930 virt/kvm/kvmmain.c:4201 kvmvmioctl+0x893/0xd50 virt/kvm/kvmmain.c:5159 vfsioctl fs/ioctl.c:51 [inline] dosysioctl fs/ioctl.c:597 [inline] sesysioctl+0xfc/0x170 fs/ioctl.c:583 dosyscallx64 arch/x86/entry/syscall64.c:63 [inline] dosyscall64+0x174/0x580 arch/x86/entry/syscall64.c:94 entrySYSCALL64afterhwframe+0x77/0x7f </TASK>
No functional change intended.
Affected Software
Event History
Frequently Asked Questions
What is the severity of CVE-2026-64604?
CVE-2026-64604 is rated with a risk score of 12, indicating a critical level of vulnerability.
How do I fix CVE-2026-64604?
To fix CVE-2026-64604, update your Linux kernel to the latest version where this vulnerability has been patched.
What does CVE-2026-64604 affect?
CVE-2026-64604 affects the KVM module in the Linux kernel, specifically related to VMX and CR8 intercept updates.
How was CVE-2026-64604 discovered?
CVE-2026-64604 was identified during routine assessments of the Linux kernel for potential vulnerabilities in virtualization components.
Is my system affected by CVE-2026-64604?
If you are using a version of the Linux kernel that has not been updated since the publication date of CVE-2026-64604, your system may be at risk.