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.
Published: 2026-08-15
Score: 7.8 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

In the Linux kernel’s pinctrl subsystem, device name strings for pin control map entries are duplicated without first being initialized. When a duplication fails, the code later frees every map entry’s name pointer, including those that were never set. This double‑free triggers a kernel crash and can potentially enable arbitrary code execution if an attacker supplies a crafted device tree or gains local kernel access.

Affected Systems

All Linux kernels running a pre‑patched pinctrl driver, particularly those that include the pinctrl‑imx module. The flaw affects any distribution that ships a kernel before the change that initializes dev_name to NULL. Devices that use the mcimx6ul‑evk platform or similar hardware are known to reproduce the issue.

Risk and Exploitability

The CVSS score of 7.8 classifies the bug as High severity, but the EPSS score of less than 1% and the absence from the KEV catalog suggest very limited public exploitation. An attacker must trigger a string duplication failure during pinctrl binding, which is a relatively uncommon condition. The risk remains significant because a double‑free can cause a kernel panic or, if exploited carefully, arbitrary code execution. Prompt patching is advised to mitigate this vulnerability.

Generated by OpenCVE AI on August 18, 2026 at 04:25 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade the Linux kernel to a release that contains the patch which initializes dev_name before duplication.
  • If an upgrade is not possible, backport the kernel change that sets dev_name to NULL before attempting to free it into your current kernel build.
  • When the pinctrl‑imx driver is not required, disable or remove it or ensure any custom pinctrl driver correctly initializes dev_name before duplication.

Generated by OpenCVE AI on August 18, 2026 at 04:25 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Debian DSA Debian DSA DSA-6466-1 linux security update
History

Wed, 19 Aug 2026 17:00:00 +0000


Tue, 18 Aug 2026 03:30:00 +0000

Type Values Removed Values Added
Weaknesses CWE-415

Tue, 18 Aug 2026 00:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-1341
References
Metrics threat_severity

None

threat_severity

Moderate


Mon, 17 Aug 2026 06:00:00 +0000

Type Values Removed Values Added
Metrics cvssV3_1

{'score': 7.8, 'vector': 'CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H'}


Sat, 15 Aug 2026 15:00:00 +0000

Type Values Removed Values Added
Weaknesses CWE-415

Sat, 15 Aug 2026 12:45:00 +0000

Type Values Removed Values Added
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.
Title pinctrl: devicetree: don't free uninitialized dev_name on error path
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-08-19T16:38:21.855Z

Reserved: 2026-08-15T05:44:03.910Z

Link: CVE-2026-74519

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-08-15T13:17:57.083

Modified: 2026-08-19T17:21:08.707

Link: CVE-2026-74519

cve-icon Redhat

Severity : Moderate

Publid Date: 2026-08-15T00:00:00Z

Links: CVE-2026-74519 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-08-18T04:30:06Z

Weaknesses
  • CWE-1341

    Multiple Releases of Same Resource or Handle