← Voltar à pesquisa de CVEs

CVE-2026-53345

KVM

Descrição

In the Linux kernel, the following vulnerability has been resolved: KVM: Don-t WARN if memory is dirtied without a vCPU when the VM is dying When marking a page dirty, complain about not having a running/loaded vCPU if and only if the VM is still alive, i.e. its refcount is non-zero. This will allow fixing a memory leak for x86 SEV-ES guests without hitting what is effectively a false positive on the WARN. For some SEV-ES VM-Exits, KVM keeps a writable mapping of a guest page across an exit to userspace, and typically unmaps the page on the next KVM_RUN. But if userspace never calls KVM_RUN after such an exit, then KVM needs to unmap the page when the vCPU is destroyed, which in turn triggers the WARN about not having a running vCPU. Alternatively, SEV-ES could temporarily load the vCPU to suppress the WARN, as is done in nested_vmx_free_vcpu() (but for completely unrelated reasons; suppressing WARN from nested_put_vmcs12_pages() is pure happenstance). But loading a vCPU during destruction is gross (ideally nVMX code would be cleaned up), risks complicating the SEV-ES code (KVM would need to ensure the temporarily load()+put() only runs when the vCPU isn-t already loaded), and is ultimately pointless. The motivation for the WARN is to guard against KVM dirtying guest memory without pushing the corresponding GFN to the active vCPU-s dirty ring, e.g. to ensure userspace doesn-t miss a dirty page. But for the VM-s refcount to reach zero, there can-t be _any_ userspace mappings to the dirty ring, as mapping the dirty ring requires doing mmap() on the vCPU FD. I.e. if userspace had a valid mapping for the dirty ring, then the vCPU file and thus the owning VM would still be alive. And so since userspace can-t possibly reach the dirty ring, whether or not KVM technically -misses- a push to the dirty ring is irrelevant.

CVSS 5.5EPSS 0.11399999999999999%Risco 0.56
Ver fonte
Publicação
2026-07-01 14:16:42
Versões afetadas
unknown
Tipo
Software crítico
Última alteração
2026-07-22 19:16:15
Vetor
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Sistemas operativos
Linux