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

vhost-vdpa: don't install the eventfd_ctx_fdget() error in config_ctx

vhost_vdpa_set_config_call() swaps the eventfd_ctx_fdget() return value
into v->config_ctx before checking it, so on failure the field briefly
holds an ERR_PTR:

ctx = fd == VHOST_FILE_UNBIND ? NULL : eventfd_ctx_fdget(fd);
swap(ctx, v->config_ctx);

if (!IS_ERR_OR_NULL(ctx))
eventfd_ctx_put(ctx);

if (IS_ERR(v->config_ctx)) {
long ret = PTR_ERR(v->config_ctx);

v->config_ctx = NULL;
return ret;
}

Commit 0bde59c1723a ("vhost-vdpa: set v->config_ctx to NULL if
eventfd_ctx_fdget() fails") added that clearing, and spelled out the
invariant the rest of the file relies on: "we consider 'v->config_ctx'
valid if it is not NULL". The window between the swap and the clearing
still breaks it. vhost_vdpa_config_cb() only tests for NULL, so a config
interrupt delivered inside the window hands the ERR_PTR to
eventfd_signal().

Check the fd before installing it instead. That closes the window and
matches how vhost_vring_ioctl() handles the same failure for the vq call
fd.

It also stops a rejected fd from tearing down a config interrupt that was
working: until now the swap replaced the live context and put it, so
after an EBADF the device silently stopped delivering config interrupts
until userspace installed a new fd.
Published: 2026-09-25
Score: 5.5 Medium
EPSS: < 1% Very Low
KEV: No
Impact: Denial of Service
Action: Immediate Patch
AI Analysis

Impact

The vulnerability is an error handling flaw in the Linux kernel’s vhost‑vdpa driver. The driver swaps an error pointer returned by eventfd_ctx_fdget() into a configuration context without first validating it. If the function fails, the context briefly holds an ERR_PTR value, and subsequent callbacks may pass this invalid pointer to eventfd_signal(). This improper validation can cause the kernel to operate on an invalid context, potentially leading to crashes or the silent loss of device configuration interrupts. The weakness is a misuse of returned error pointers and falls under CWE‑366.

Affected Systems

All Linux kernel installations that load the vhost‑vdpa driver are potentially affected, regardless of distribution, until the fix for this bug is applied. The exact kernel revisions that contain the patch (commit 0bde59c1723a) are not specified in the data, so any kernel prior to that commit should be considered vulnerable.

Risk and Exploitability

The CVSS score of 5.5 and the EPSS score is < 1%; the vulnerability is not listed in the CISA KEV catalog. The flaw requires interaction with the vhost‑vdpa subsystem, which is typically accessed by privileged or kernel‑mode code. An attacker that can induce the error condition or exploit the resulting misbehavior may cause a denial of service of the virtual device that relies on configuration interrupts. Although not exploitable remotely in a standard user context, it poses a risk in virtualization environments where the privileged user or attacker has control over the virtual machine hosting the driver.

Generated by OpenCVE AI on October 1, 2026 at 05:55 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Update the Linux kernel to a release that includes commit 0bde59c1723a, which clears the configuration context when eventfd_ctx_fdget() fails.
  • If a kernel upgrade cannot be performed immediately, mitigate by disabling or removing the vhost‑vdpa module from configurations that are not critical, thereby preventing the vulnerable code from executing.
  • Restart any services or containers that use vhost‑vdpa after updating or disabling the module to ensure no stale configuration contexts remain.

Generated by OpenCVE AI on October 1, 2026 at 05:55 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Debian DLA Debian DLA DLA-4817-1 linux-6.12 security update
Debian DLA Debian DLA DLA-4841-1 linux security update
Debian DSA Debian DSA DSA-6528-1 linux security update
Ubuntu USN Ubuntu USN USN-8961-1 Linux kernel vulnerabilities
History

Sat, 03 Oct 2026 11:15:00 +0000


Thu, 01 Oct 2026 04:30:00 +0000

Type Values Removed Values Added
Weaknesses CWE-795

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

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

None

cvssV3_1

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

threat_severity

Low


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

Type Values Removed Values Added
Weaknesses CWE-795

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-vdpa: don't install the eventfd_ctx_fdget() error in config_ctx vhost_vdpa_set_config_call() swaps the eventfd_ctx_fdget() return value into v->config_ctx before checking it, so on failure the field briefly holds an ERR_PTR: ctx = fd == VHOST_FILE_UNBIND ? NULL : eventfd_ctx_fdget(fd); swap(ctx, v->config_ctx); if (!IS_ERR_OR_NULL(ctx)) eventfd_ctx_put(ctx); if (IS_ERR(v->config_ctx)) { long ret = PTR_ERR(v->config_ctx); v->config_ctx = NULL; return ret; } Commit 0bde59c1723a ("vhost-vdpa: set v->config_ctx to NULL if eventfd_ctx_fdget() fails") added that clearing, and spelled out the invariant the rest of the file relies on: "we consider 'v->config_ctx' valid if it is not NULL". The window between the swap and the clearing still breaks it. vhost_vdpa_config_cb() only tests for NULL, so a config interrupt delivered inside the window hands the ERR_PTR to eventfd_signal(). Check the fd before installing it instead. That closes the window and matches how vhost_vring_ioctl() handles the same failure for the vq call fd. It also stops a rejected fd from tearing down a config interrupt that was working: until now the swap replaced the live context and put it, so after an EBADF the device silently stopped delivering config interrupts until userspace installed a new fd.
Title vhost-vdpa: don't install the eventfd_ctx_fdget() error in config_ctx
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-19T09:12:00.172Z

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

Link: CVE-2026-97993

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

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

Modified: 2026-10-19T10:17:50.730

Link: CVE-2026-97993

cve-icon Redhat

Severity : Low

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

Links: CVE-2026-97993 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-10-01T06:00:13Z

Weaknesses
  • CWE-366

    Race Condition within a Thread