Description (CNA)
In the Linux kernel, the following vulnerability has been resolved: net: qrtr: replace qrtr_tx_flow radix_tree with xarray to fix memory leak __radix_tree_create() allocates and links intermediate nodes into the tree one by one. If a subsequent allocation fails, the already-linked nodes remain in the tree with no corresponding leaf entry. These orphaned internal nodes are never reclaimed because radix_tree_for_each_slot() only visits slots containing leaf values. The radix_tree API is deprecated in favor of xarray. As suggested by Matthew Wilcox, migrate qrtr_tx_flow from radix_tree to xarray instead of fixing the radix_tree itself [1]. xarray properly handles cleanup of internal nodes — xa_destroy() frees all internal xarray nodes when the qrtr_node is released, preventing the leak. [1] https://lore.kernel.org/all/20260225071623.41275-1-jiayuan.chen@linux.dev/T/
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected 5fdeb0d372ab33b4175043a2a4a1730239a217f1 before f2dd9aaf6e2861337f5835f877a5b2becaf4b015; affected 5fdeb0d372ab33b4175043a2a4a1730239a217f1 before 4b75ff0aedd6ade1018ad4a3a9d8336794e36e42; affected 5fdeb0d372ab33b4175043a2a4a1730239a217f1 before ff134cc43972d7ddceff8cfd36cf6b9eaafc00b3; affected 5fdeb0d372ab33b4175043a2a4a1730239a217f1 before 0fda873092b541bb5a9b87d728a2429f863f8cfa; affected 5fdeb0d372ab33b4175043a2a4a1730239a217f1 before 69402908e277dd164bf8d7c8fd0513c0fac28e9e; affected 5fdeb0d372ab33b4175043a2a4a1730239a217f1 before f2664bc4f0f356f17c2094587a2b3665e3867e44; affected 5fdeb0d372ab33b4175043a2a4a1730239a217f1 before 5d2249eefaca59908fe3c264b8eca526424dcfbe; affected 5fdeb0d372ab33b4175043a2a4a1730239a217f1 before 2428083101f6883f979cceffa76cd8440751ffe6 |
| Linux / Linux | affected 5.6; unaffected 0 before 5.6; unaffected 5.10.253 through 5.10.*; unaffected 5.15.203 through 5.15.*; unaffected 6.1.168 through 6.1.*; unaffected 6.6.134 through 6.6.*; unaffected 6.12.81 through 6.12.*; unaffected 6.18.22 through 6.18.*; unaffected 6.19.12 through 6.19.*; unaffected 7.0 through * |
CWE
No CWE identifiers supplied.
References
- https://git.kernel.org/stable/c/f2dd9aaf6e2861337f5835f877a5b2becaf4b015
- https://git.kernel.org/stable/c/4b75ff0aedd6ade1018ad4a3a9d8336794e36e42
- https://git.kernel.org/stable/c/ff134cc43972d7ddceff8cfd36cf6b9eaafc00b3
- https://git.kernel.org/stable/c/0fda873092b541bb5a9b87d728a2429f863f8cfa
- https://git.kernel.org/stable/c/69402908e277dd164bf8d7c8fd0513c0fac28e9e
- https://git.kernel.org/stable/c/f2664bc4f0f356f17c2094587a2b3665e3867e44
- https://git.kernel.org/stable/c/5d2249eefaca59908fe3c264b8eca526424dcfbe
- https://git.kernel.org/stable/c/2428083101f6883f979cceffa76cd8440751ffe6