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

vhost: invalidate vring access on IOTLB transitions

When VIRTIO_F_ACCESS_PLATFORM changes, cached vring pointers and IOTLB
metadata are interpreted in a different address space. Keeping them
across the transition can leave stale ring mappings in use.

Clearing d->iotlb before taking the VQ locks also lets a worker observe
a transient NULL d->iotlb and fall back to d->umem while translating a
descriptor.

Add a common vhost_clear_device_iotlb() helper for vhost-net and
vhost-vsock. Take all VQ mutexes in index order before dropping the
device-wide IOTLB, invalidate each VQ's cached ring access and metadata,
clear pending IOTLB messages, and free the old table after the handoff.
This serializes the transition with workers and prevents mixed address
space mappings.

On the first direct-to-IOTLB transition, invalidate the cached vring
addresses. When an existing device IOTLB is replaced, preserve the
GIOVA ring addresses and reset only the metadata cache. After clearing
ACCESS_PLATFORM, userspace must configure the vring addresses for the
new address mode.

vhost_vq_invalidate_access() clears desc, avail, and used together.
Treat the VQ as invalidated only when all three are NULL, since a single
GIOVA address may legitimately be zero.
Published: 2026-09-25
Score: 7.0 High
EPSS: < 1% Very Low
KEV: No
Impact: Kernel memory corruption
Action: Patch Kernel
AI Analysis

Impact

The Linux kernel’s vhost subsystem contains a flaw that occurs when the VIRTIO_F_ACCESS_PLATFORM feature is toggled or the IOTLB is refreshed. Cached vring pointers and IOT interpreted in a different address space after a transition, are left untouched. This allows stale ring mappings to remain active. If an attacker can trigger such a transition while a worker or descriptor translation is in progress, the kernel may read or write to an incorrect memory location, leading to kernel memory corruption, data loss, or denial of service.

Affected Systems

This vulnerability affects the Linux kernel via the vhost-net and vhost-vsock modules. Any system running a kernel that supports vhost with the VIRTIO_F_ACCESS_PLATFORM capability—regardless of the exact kernel version unless it incorporates the fix—is potentially vulnerable until the patch is applied.

Risk and Exploitability

The CVSS score of 7.0 indicates moderate severity, while the EPSS score of <1% shows a very low probability of exploitation. The vulnerability arises from stale internal state rather than externally supplied input, which limits the attack surface to local or privileged processes that can trigger a vhost IOTLB transition. The description does not explicitly state the attack vector, so the likely attack vector is a userspace application that manipulates the VIRTIO_F_ACCESS_PLATFORM feature to induce an IOTLB refresh while the kernel is handling a descriptor translation. If exploited, the kernel could read or write to an unintended memory location, potentially causing memory. This vulnerability is not listed in the CISA KEV catalog.

Generated by OpenCVE AI on October 1, 2026 at 08:09 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Apply the latest Linux kernel release that incorporates the vhost IOTLB transition fix described in the source commits.
  • If a kernel upgrade cannot be performed immediately, configure vhost devices to disable the VIRTIO_F_ACCESS_PLATFORM feature so that address space transitions are not triggered until the kernel is updated.
  • If neither option is possible, manually backport or apply the specific patch from the kernel source tree, following the guidelines in the provided commit references.

Generated by OpenCVE AI on October 1, 2026 at 08:09 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Thu, 15 Oct 2026 13:30:00 +0000


Thu, 01 Oct 2026 06:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-416

Wed, 30 Sep 2026 12:15:00 +0000

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

None

cvssV3_1

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

threat_severity

Moderate


Fri, 25 Sep 2026 14:45:00 +0000

Type Values Removed Values Added
Weaknesses CWE-416

Fri, 25 Sep 2026 10:30:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: vhost: invalidate vring access on IOTLB transitions When VIRTIO_F_ACCESS_PLATFORM changes, cached vring pointers and IOTLB metadata are interpreted in a different address space. Keeping them across the transition can leave stale ring mappings in use. Clearing d->iotlb before taking the VQ locks also lets a worker observe a transient NULL d->iotlb and fall back to d->umem while translating a descriptor. Add a common vhost_clear_device_iotlb() helper for vhost-net and vhost-vsock. Take all VQ mutexes in index order before dropping the device-wide IOTLB, invalidate each VQ's cached ring access and metadata, clear pending IOTLB messages, and free the old table after the handoff. This serializes the transition with workers and prevents mixed address space mappings. On the first direct-to-IOTLB transition, invalidate the cached vring addresses. When an existing device IOTLB is replaced, preserve the GIOVA ring addresses and reset only the metadata cache. After clearing ACCESS_PLATFORM, userspace must configure the vring addresses for the new address mode. vhost_vq_invalidate_access() clears desc, avail, and used together. Treat the VQ as invalidated only when all three are NULL, since a single GIOVA address may legitimately be zero.
Title vhost: invalidate vring access on IOTLB transitions
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-10-15T10:11:56.733Z

Reserved: 2026-09-25T10:18:58.209Z

Link: CVE-2026-97988

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-09-25T11:17:26.903

Modified: 2026-10-15T11:18:09.457

Link: CVE-2026-97988

cve-icon Redhat

Severity : Moderate

Publid Date: 2026-09-25T00:00:00Z

Links: CVE-2026-97988 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-10-01T08:15:05Z

Weaknesses
  • CWE-821

    Incorrect Synchronization