Executive brief
A vulnerability in the Linux kernel's DMA engine driver for Atmel HDMAC controllers could allow a local user to cause a resource leak. By repeatedly triggering certain DMA operations, the system may fail to release hardware device references, eventually leading to resource exhaustion and potential system instability or a denial-of-service condition. This affects systems using specific Atmel hardware components.
Technical details
A reference counting vulnerability exists in the at_hdmac DMA engine driver within the Linux kernel. The function of_dma_xlate() acquires a reference to the DMA platform device, but the driver fails to call put_device() when releasing channel resources in atc_free_chan_resources() during successful allocation paths. This results in a persistent device reference leak. An attacker with local access could potentially exploit this to exhaust kernel memory or prevent hardware modules from being properly unloaded, leading to a denial-of-service. The issue has been patched across multiple stable kernel branches by ensuring put_device() is called on the associated dma_dev before freeing the slave structure.
Affected products
- Linux Linux Kernel 3.10 to 5.10.249, 5.11 to 5.15.199, 5.16 to 6.1.162, 6.2 to 6.6.122, 6.7 to 6.12.67, 6.13 to 6.18.7
Timeline
- 2025-11-17: other: Patch authored by Johan Hovold
- 2026-01-31: disclosed: CVE published
- 2026-02-06: patched: Patch committed to stable trees
References
- https://git.kernel.org/stable/c/48b2d7f530b83cb149dbf0e48f95ccadb2d90da9
- https://git.kernel.org/stable/c/49d964cde422dc66fea514b7ab24aa729df7081d
- https://git.kernel.org/stable/c/4c67b4f45c8540ee4e62e24ca4608c6a9a81ee0f
- https://git.kernel.org/stable/c/6a86cf2c09e149d5718a5b7090545f7566da9334
- https://git.kernel.org/stable/c/987c71671367f42460689b78244d7b894c50999a
- https://git.kernel.org/stable/c/b9074b2d7a230b6e28caa23165e9d8bc0677d333
- https://git.kernel.org/stable/c/f3c23b7e941349505c3d40de2cc0acd93d9ac057