CVE-2022-50482
Description
A memory leak flaw was found in the Linux kernel's Intel VT-d IOMMU driver in the initialization error path. A local user can trigger this issue when the init_dmars function fails during IOMMU setup, causing the si_domain memory to remain allocated without being freed. This results in a permanent memory leak leading to resource exhaustion and denial of service.
Statement
The init_dmars function performs IOMMU initialization and allocates the si_domain (shared identity domain) for devices that can bypass IOMMU translation. When initialization fails partway through, the error path returns without cleaning up the si_domain allocation. Since this is a boot-time initialization function, the leak occurs once per failed initialization attempt. While the leak was originally detected through kmem_cache errors, even after mempool removal the underlying memory leak persists. The issue requires conditions that cause IOMMU initialization to fail, which can occur due to hardware issues, misconfigurations, or resource constraints during boot.
Common Vulnerability Scoring System (CVSS) Score Details
Info alert:Important note
CVSS scores for open source components depend on vendor-specific factors (e.g. version or build chain). Therefore, Red Hat's score and impact rating can be different from NVD and other vendors. Red Hat remains the authoritative CVE Naming Authority (CNA) source for its products and services (see Red Hat classifications).
CVSS v3 Score Breakdown
| Red Hat | NVD | cve.org | |
|---|---|---|---|
| Base Score | 5.5 | 5.5 | N/A |
| Attack Vector | Local | Local | N/A |
| Attack Complexity | Low | Low | N/A |
| Privileges Required | Low | Low | N/A |
| User Interaction | None | None | N/A |
| Scope | Unchanged | Unchanged | N/A |
| Confidentiality | None | None | N/A |
| Integrity Impact | None | None | N/A |
| Availability Impact | High | High | N/A |
Vector
Red Hat: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
NVD: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Frequently Asked Questions
Not sure what something means? Check out our Security Glossary.
Want to get errata notifications? Sign up here.