CVE-2022-49746: dmaengine: imx-sdma: Fix a possible memory leak in sdma_transfer_init
In the Linux kernel, the following vulnerability has been resolved:
dmaengine: imx-sdma: Fix a possible memory leak in sdma_transfer_init
If the function sdma_load_context() fails, the sdma_desc will be
freed, but the allocated desc->bd is forgot to be freed.
We already met the sdma_load_context() failure case and the log as
below:
[ 450.699064] imx-sdma 30bd0000.dma-controller: Timeout waiting for CH0 ready
...
In this case, the desc->bd will not be freed without this change.
Security readout for executives and security teams
Plain-English summary
This Linux kernel issue can leak memory in the i.MX SDMA driver when a transfer setup failure occurs. The main business risk is local availability impact on systems using the affected driver, not data theft or remote compromise.
Executive priority
Handle through normal kernel patch management, with higher priority for embedded or operational systems using i.MX SDMA. This is not evidenced as remotely exploitable or actively exploited, but availability impact can matter on constrained or critical devices.
Technical view
In sdma_transfer_init, if sdma_load_context() fails, sdma_desc is freed but desc->bd is not. This is CWE-401 and has CVSS 5.5: local attack vector, low privileges, no confidentiality or integrity impact, and high availability impact.
Likely exposure
Exposure is most likely on Linux systems running affected kernel branches with the imx-sdma DMA controller driver enabled or used. The source lists Linux kernel versions and stable commit references, but does not identify specific distributions or appliances.
Exploitation context
The CVE is not marked KEV, and the provided sources do not report active exploitation. The CVSS vector indicates exploitation requires local access and low privileges, with the expected consequence being availability degradation through memory leakage.
Researcher notes
The important code path is sdma_transfer_init error handling after sdma_load_context() failure. The fix frees desc->bd before freeing the descriptor. Evidence is sufficient for root cause and impact class, but the provided sources do not establish real-world exploit activity.
Mitigation direction
Update affected Linux kernels through supported vendor or distribution packages.
Verify the update includes one of the referenced stable kernel fixes.
Prioritize systems using imx-sdma or i.MX DMA controller functionality.
If no package is available, monitor kernel and vendor guidance for backports.
Validation and detection
Inventory kernel versions against the affected versions listed in the CVE record.
Check whether the imx-sdma driver or matching DMA controller is present.
Review system logs for sdma_load_context failure indicators such as CH0 timeout messages.
Confirm the running kernel includes the applicable stable fix commit.
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.