Executive brief
A memory management issue was identified in the Linux kernel's pinctrl subsystem, which manages how hardware pins are configured. A technical error causes the system to fail to release certain internal references, leading to a 'resource leak' that could gradually consume system memory. While this is primarily a stability concern, it could potentially lead to system slowdowns or crashes over long periods of operation.
Technical details
A reference count leak exists in the 'pinctrl-single' driver within the 'pcs_add_gpio_func()' function. The vulnerability is caused by the use of 'of_parse_phandle_with_args()', which increments the reference count of a device node ('gpiospec.np'). The implementation failed to call 'of_node_put()' to decrement this count during normal loop iterations or on error paths (specifically when 'devm_kzalloc' fails). This results in a persistent leak of 'device_node' references. The fix involves adding 'of_node_put()' calls to ensure proper resource cleanup. This is a local resource leak with low exploitability, primarily impacting system stability.
Affected products
- Linux Linux kernel All versions prior to the fix in 2026
Timeline
- 2026-01-20: other: Patch submitted by developer
- 2026-05-27: advisory: CVE published to NVD
References
- https://git.kernel.org/stable/c/191bfd5710d6a7f48ba4315d8d3e908dcc15243c
- https://git.kernel.org/stable/c/353353309b0f7afa407df29e455f9d15b5acc296
- https://git.kernel.org/stable/c/3e3b28bb0b6ddc521a4fdd1c1ba0d35017a0796b
- https://git.kernel.org/stable/c/456a60d06c09a92680dc35fabca68024badcc28e
- https://git.kernel.org/stable/c/5b9e84d27e310f22c4ba45fedbc4f5baf43dd823
- https://git.kernel.org/stable/c/7814b1431848854b56717086e2b61bea3c59753d
- https://git.kernel.org/stable/c/99cc7352156c65201c675f750e0e77c4c73d93f5