CVE-2025-21770: iommu: Fix potential memory leak in iopf_queue_remove_device()
In the Linux kernel, the following vulnerability has been resolved:
iommu: Fix potential memory leak in iopf_queue_remove_device()
The iopf_queue_remove_device() helper removes a device from the per-iommu
iopf queue when PRI is disabled on the device. It responds to all
outstanding iopf's with an IOMMU_PAGE_RESP_INVALID code and detaches the
device from the queue.
However, it fails to release the group structure that represents a group
of iopf's awaiting for a response after responding to the hardware. This
can cause a memory leak if iopf_queue_remove_device() is called with
pending iopf's.
Fix it by calling iopf_free_group() after the iopf group is responded.
Security readout for executives and security teams
Plain-English summary
CVE-2025-21770 is a Linux kernel memory leak in IOMMU page-fault handling. When a device is removed from an IOPF queue with pending faults, the kernel can fail to free a related group object. The main business risk is local availability impact from memory exhaustion, not data theft or remote compromise.
Executive priority
Handle through normal kernel patch management, with higher urgency for shared infrastructure where local users or workloads are less trusted. No source indicates active exploitation, but the availability impact justifies timely remediation on critical hosts.
Technical view
The flaw is in iopf_queue_remove_device(). It responds to outstanding IOPFs with IOMMU_PAGE_RESP_INVALID and detaches the device, but did not release the IOPF group afterward. The fix adds iopf_free_group() after the response path. CVSS 3.1 is 5.5: local, low privilege, no user interaction, high availability impact.
Likely exposure
Exposure is likely limited to Linux systems running affected kernel versions and using relevant IOMMU/PRI/IOPF behavior. The provided record does not identify specific distributions or appliances. Vendor backports may change practical exposure, so kernel package provenance matters more than upstream version alone.
Exploitation context
The CVE record shows local attack vector and low privileges required. KEV is false, and the provided sources do not state active exploitation or public exploit availability. Treat this as an availability issue that could matter on multi-user, virtualization, or hardware-intensive systems.
Researcher notes
Evidence supports CWE-401 memory leak in the IOMMU IOPF removal path. The vulnerable condition requires pending IOPFs during device removal from the per-IOMMU queue. The source bundle does not provide distro-specific affected ranges, exploit details, or non-update mitigations.
Mitigation direction
Update to a kernel containing the referenced stable fixes or your vendor’s backported package.
Check Linux distribution advisories before relying only on upstream version numbers.
Prioritize systems where local users or workloads can influence device or IOMMU behavior.
Monitor affected hosts for abnormal kernel memory growth or availability degradation.
Validation and detection
Inventory Linux kernel versions and vendor package revisions across exposed systems.
Compare installed kernels with vendor advisories and the referenced stable commits.
Identify systems using IOMMU, PRI, or IOPF-capable configurations.
Review operational telemetry for memory leak symptoms under device removal or PRI-disable events.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cwe · low confidence lookup
CWE-401: Exact CWE lookup
Use the exact CWE identifier as the starting point before reviewing related ATT&CK behavior. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.
CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.
CWE-401 · source CWE mapping
Missing Release of Memory after Effective Lifetime
Missing Release of Memory after Effective Lifetime represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.