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

iommufd: Move vevent memory allocation outside spinlock

The veventq memory allocation happens inside the spinlock. Given its depth
is decided by the user space, this leaves a vulnerability, where userspace
can allocate large queues to exhaust atomic memory reserves.

Move the allocation outside the spinlock and use GFP_NOWAIT, which can fail
fast under memory pressure without dipping into the GFP_ATOMIC reserves or
direct-reclaiming from the threaded IRQ handler. On allocation failure,
queue the lost_events_header (so userspace learns of the drop) and return
-ENOMEM so the caller learns of the kernel-side memory pressure.

This is intentionally distinct from the queue-overflow path, which also
queues the lost_events_header but returns 0: a full queue is an expected
userspace-pacing condition rather than a kernel error.

A subsequent change will cap the upper bound of the veventq_depth.
Published: 2026-07-25
Score: 5.5 Medium
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The Linux kernel’s iommufd component previously allocated memory for its vevent queue while holding a spinlock. Because the queue depth is supplied by user‑space, an attacker could request a depth large enough that the kernel would attempt to allocate a correspondingly large amount of atomic memory. This memory allocation occurs inside the spinlock, allowing the allocation to consume the kernel’s limited atomic memory reserves. The result is a kernel scenario where subsequent atomic‑allocation attempts fail or the system may become unstable, potentially causing a denial‑of‑service. The flaw combines improper memory management (CWE‑401) with unnecessary resource allocation (CWE‑770).

Affected Systems

All Linux kernel releases that implement the original vevent queue logic before the commit introducing the fix are potentially vulnerable. The advisory does not list specific release numbers; therefore, any kernel tree that does not contain the commit 6c5fc40200… is considered at risk. Vendors maintain their own kernel branches, so users should verify whether their distribution includes the fix.

Risk and Exploitability

The CVSS v3.1 score of 5.5 places the vulnerability in the medium severity band. The EPSS score is below 1 %, indicating a low probability of exploitation in the current threat landscape. The vulnerability is not listed in CISA’s KEV catalog, and no publicly known exploits exist. Exploitation remains local; an attacker would need the ability to invoke iommufd and supply an unusually large queue depth. (Inferred: iommufd is usually accessed by privileged processes or device daemon applications, so privileged access is likely required.) If an attacker succeeds, the resulting kernel memory exhaustion could lead to system hangs or crashes, impacting availability.

Generated by OpenCVE AI on August 13, 2026 at 12:03 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade the kernel to a version that includes the iommufd fix (commit 6c5fc40200…) which moves the allocation outside the spinlock and uses GFP_NOWAIT.
  • If a kernel upgrade is not possible, limit the maximum vevent queue depth or disable the iommufd feature in environments where it is not needed; for example, set appropriate sysctl values or pass kernel command‑line parameters to enforce a safe maximum size.
  • Continuously monitor system logs for –ENOMEM return codes from iommufd calls and watch overall memory usage to detect potential atomic memory exhaustion; configure alerts if usage approaches critical thresholds.

Generated by OpenCVE AI on August 13, 2026 at 12:03 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Wed, 12 Aug 2026 15:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-401

Sat, 01 Aug 2026 02:45:00 +0000

Type Values Removed Values Added
Weaknesses CWE-789

Wed, 29 Jul 2026 12:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-770
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

Moderate


Sun, 26 Jul 2026 02:45:00 +0000

Type Values Removed Values Added
Weaknesses CWE-789

Sat, 25 Jul 2026 09:30:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: iommufd: Move vevent memory allocation outside spinlock The veventq memory allocation happens inside the spinlock. Given its depth is decided by the user space, this leaves a vulnerability, where userspace can allocate large queues to exhaust atomic memory reserves. Move the allocation outside the spinlock and use GFP_NOWAIT, which can fail fast under memory pressure without dipping into the GFP_ATOMIC reserves or direct-reclaiming from the threaded IRQ handler. On allocation failure, queue the lost_events_header (so userspace learns of the drop) and return -ENOMEM so the caller learns of the kernel-side memory pressure. This is intentionally distinct from the queue-overflow path, which also queues the lost_events_header but returns 0: a full queue is an expected userspace-pacing condition rather than a kernel error. A subsequent change will cap the upper bound of the veventq_depth.
Title iommufd: Move vevent memory allocation outside spinlock
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-07-25T08:49:31.325Z

Reserved: 2026-07-19T15:36:31.778Z

Link: CVE-2026-64292

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Analyzed

Published: 2026-07-25T10:17:09.937

Modified: 2026-08-12T15:06:33.300

Link: CVE-2026-64292

cve-icon Redhat

Severity : Moderate

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

Links: CVE-2026-64292 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-08-13T12:15:17Z

Weaknesses
  • CWE-401

    Missing Release of Memory after Effective Lifetime

  • CWE-770

    Allocation of Resources Without Limits or Throttling