KernelScan.io

CRITICAL Introduced in 4.11

crypto DMACleanup Leak

CVE-2026-74279

CVSS 10.0 / 10.0 NVD

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H

KernelScan AI4.7MEDIUM

01

In the Linux kernel, the following vulnerability has been resolved: crypto: cavium/cpt - fix DMA cleanup using wrong loop index The sg_cleanup error path used list[i] instead of list[j] when unmapping DMA buffers, leaking successfully mapped entries and repeatedly unmapping the failed one.

02

Engine v0.6.0

Risk summary

A DMA cleanup error path in the Cavium CPT crypto driver uses the wrong loop index, leaking successfully-mapped DMA buffers and repeatedly unmapping the failed entry. An unprivileged local user can trigger this through the kernel crypto API (e.g., AF_ALG sockets) on systems equipped with Cavium Octeon-TX hardware, causing progressive DMA memory exhaustion that can degrade or halt cryptographic operations.

Affecteddrivers/crypto/cavium/cpt/cptvf_reqmanager.c (crypto: cavium/cpt)

Vulnerability analysis

In the Cavium CPT crypto accelerator driver, the error cleanup path that unmaps DMA scatter-gather buffers uses the wrong loop index variable, causing it to skip unmapping all successfully-mapped entries (leaking their DMA mappings) and instead repeatedly attempt to unmap the single entry that already failed. This error path is reached when a DMA mapping fails partway through setup, which can be induced under memory pressure. The kernel crypto API is accessible to unprivileged local users via AF_ALG sockets on systems with Cavium Octeon-TX hardware, making the leak triggerable without special privileges. The fix corrects the loop index so each successfully-mapped buffer is properly unmapped during cleanup, preventing both the resource leak and the redundant unmapping of the failed entry.

03

BranchIntroducedFixed inPatch commit
5.104.115.10.26123c6174e48f6
5.154.115.15.21223d3a7e896a1
6.14.116.1.17828141f95ae93
6.124.116.12.973b8a1e1f4e40
6.184.116.18.40fb4d57b83356
6.64.116.6.1458afd1007ef79
7.14.117.1.5d319b83b97b3
mainline4.117.29dbf173bd32d
cip/4.194.114.19.325-cip1368c369104ba42
cip/4.19-rt4.114.19.325-cip136-rt508c369104ba42
cip/5.104.115.10.263-cip7623c6174e48f6
cip/5.10-rt4.115.10.268-cip77-rt3423c6174e48f6
cip/6.14.116.1.182-cip5928141f95ae93
cip/6.1-rt4.116.1.182-cip59-rt3128141f95ae93
cip/6.124.116.12.101-cip293b8a1e1f4e40

04

State of the newest release of each Civil Infrastructure Platform SLTS tree, from CIP's own fix records.

CIP treeState
cip/6.12Fixed in 6.12.101-cip29
cip/6.1Fixed in 6.1.182-cip59
cip/6.1-rtFixed in 6.1.182-cip59-rt31
cip/5.10Fixed in 5.10.263-cip76
cip/5.10-rtFixed in 5.10.268-cip77-rt34
cip/4.19Fixed in 4.19.325-cip136
cip/4.19-rtFixed in 4.19.325-cip136-rt50