Executive brief
A vulnerability in the Linux kernel's virtualization component (KVM) could cause issues when saving or restoring the state of virtual machines using AMD processors. Specifically, certain debugging and performance monitoring data (Last Branch Record) is not correctly handled during virtual machine transitions. This could lead to inconsistent system states or minor data corruption within the virtualized environment's debugging registers.
Technical details
A flaw exists in the KVM SVM implementation where MSR_IA32_DEBUGCTLMSR and LBR MSRs are not enumerated by KVM_GET_MSR_INDEX_LIST and cannot be set via KVM_SET_MSRS. This results in broken save/restore functionality for these registers. The fix involves adding these MSRs to the base save list and allowing host-initiated writes from userspace when LBR virtualization is enabled. Additionally, the patch ensures LBRs are correctly copied from the VMCB01 save area during nested state transitions in svm_copy_vmrun_state(). This also addresses a similar reporting flaw in the VMX (Intel) implementation for MSR_IA32_DEBUGCTLMSR.
Affected products
- Linux Linux Kernel KVM SVM component
Timeline
- 2026-03-03: disclosed: Initial patch submission by Yosry Ahmed
- 2026-05-07: patched: Commits merged into stable branches
- 2026-05-27: advisory: CVE-2026-46014 published