Description
In the Linux kernel, the following vulnerability has been resolved:

KVM: SVM: Preserve TLB control (i.e. pending TLB flush) on failed VMRUN

Don't reset the VMCB's TLB control back to "do nothing" on a failed VMRUN,
as empirical testing shows that the CPU performs the requested TLB flush if
and only if VMRUN is successful, i.e. clearing TLB control on a failed
VMRUN effectively drops a TLB flush.

Explicitly track the need to flush all ASIDs on a per-CPU basis, as the
ASID reuse condition is tied to the pCPU, not to the vCPU. As a bonus,
this also obviates the need to avoid clobbering FLUSH_ALL_ASID with
TLB_CONTROL_FLUSH_ASID, e.g. in svm_flush_tlb_asid().

Deliberately don't bother saving/restoring the "old" tlb_ctl on failure,
in quotes because it's not exactly the old tlb_ctl, it's the tlb_ctl from
after pre_svm_run(), but before updating tlb_ctl for flush_all_asids. If
VMRUN fails and TLB_CONTROL_FLUSH_ALL_ASID is forced, then the next
successful run of the VMCB *may* unnecessarily flush all ASIDs, which
strictly speaking could result in noisy neighbor issues. However, the
fact that new_asid() is already guest-triggerable, because of KVM's flawed
behavior of clearing the ASID on emulated INIT, means that a guest can
already trigger a flush of all ASIDs at roughly the same rate. And once
KVM stops clobbering the ASID on emulated INIT, *or* assigns a static ASID
to each vCPU, this flaw goes away.
Published: 2026-10-18
Score: 7.8 High
EPSS: < 1% Very Low
KEV: No
Impact: Denial of Service
Action: Immediate Patch
AI Analysis

Impact

A flaw in the Linux kernel’s KVM SVM module causes the virtual machine control block’s TLB flush settings to be lost when a VMRUN call fails. As a result, subsequent successful VMRUN operations may either omit required TLB flushes or perform unnecessary flushes of all ASIDs, leading to stale memory translations or performance degradation. The flaw does not provide a direct path to code execution, but it can be used by a guest to trigger repeated full ASID flushes, potentially exhausting host resources and degrading overall cloud or virtual machine performance. This weakness is classified as CWE‑459, involving improper handling of uninitialized data, and results in a denial‑of‑service condition for other guests running on the same host.

Affected Systems

The vulnerability affects Linux kernel hosts that run KVM with AMD’s Secure Virtual Machine (SVM) extensions. The advisory does not specify a particular kernel version, so any host running an unpatched KVM SVM implementation may be vulnerable. Distribution‑specific version information is not provided.

Risk and Exploitability

The CVSS score of 7.8 indicates high severity. The EPSS score of <1% indicates a very low likelihood that exploitation will occur in the wild. The vulnerability is not listed in the CISA KEV catalog. According to the description, the likely attack vector is a guest operating system running inside a KVM VM on an AMD processor that can trigger a VMRUN failure; the guest can then repeatedly induce full ASID flushes. This behaviour can exhaust host resources and degrade performance for other guests, effectively causing a denial‑of‑service condition on the host. While there is no evidence of active exploitation, the combination of high impact and the availability of an internal attack surface warrants immediate attention.

Generated by OpenCVE AI on October 23, 2026 at 08:38 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade to a Linux kernel version that includes the KVM SVM TLB flush fix
  • Configure KVM to assign static ASIDs to each vCPU to avoid ASID reuse issues
  • Disable or remediate the emulated INIT clobbering behaviour in the host configuration
  • Monitor host CPU performance for signs of excessive ASID flush activity

Generated by OpenCVE AI on October 23, 2026 at 08:38 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 06 Nov 2026 17:30:00 +0000


Fri, 23 Oct 2026 07:45:00 +0000

Type Values Removed Values Added
Weaknesses CWE-400

Fri, 23 Oct 2026 00:45:00 +0000

Type Values Removed Values Added
Weaknesses CWE-459
References
Metrics threat_severity

None

cvssV3_1

{'score': 7.8, 'vector': 'CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:H'}

threat_severity

Important


Sun, 18 Oct 2026 19:45:00 +0000

Type Values Removed Values Added
Weaknesses CWE-400

Sun, 18 Oct 2026 16:00:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: KVM: SVM: Preserve TLB control (i.e. pending TLB flush) on failed VMRUN Don't reset the VMCB's TLB control back to "do nothing" on a failed VMRUN, as empirical testing shows that the CPU performs the requested TLB flush if and only if VMRUN is successful, i.e. clearing TLB control on a failed VMRUN effectively drops a TLB flush. Explicitly track the need to flush all ASIDs on a per-CPU basis, as the ASID reuse condition is tied to the pCPU, not to the vCPU. As a bonus, this also obviates the need to avoid clobbering FLUSH_ALL_ASID with TLB_CONTROL_FLUSH_ASID, e.g. in svm_flush_tlb_asid(). Deliberately don't bother saving/restoring the "old" tlb_ctl on failure, in quotes because it's not exactly the old tlb_ctl, it's the tlb_ctl from after pre_svm_run(), but before updating tlb_ctl for flush_all_asids. If VMRUN fails and TLB_CONTROL_FLUSH_ALL_ASID is forced, then the next successful run of the VMCB *may* unnecessarily flush all ASIDs, which strictly speaking could result in noisy neighbor issues. However, the fact that new_asid() is already guest-triggerable, because of KVM's flawed behavior of clearing the ASID on emulated INIT, means that a guest can already trigger a flush of all ASIDs at roughly the same rate. And once KVM stops clobbering the ASID on emulated INIT, *or* assigns a static ASID to each vCPU, this flaw goes away.
Title KVM: SVM: Preserve TLB control (i.e. pending TLB flush) on failed VMRUN
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-11-06T17:15:05.144Z

Reserved: 2026-09-25T10:25:14.366Z

Link: CVE-2026-98715

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-10-18T16:17:25.050

Modified: 2026-11-06T18:18:30.193

Link: CVE-2026-98715

cve-icon Redhat

Severity : Important

Publid Date: 2026-10-18T00:00:00Z

Links: CVE-2026-98715 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-10-23T08:45:16Z

Weaknesses