pinctrl: fix deadlock in create_pinctrl() when handling -EPROBE_DEFER (Linux Linux)

CVE-2024-42090
MEDIUM 5.5

En bref

Source
NVD
EPSS
EPSS 0.19 % · centile 8 ()
État
PUBLISHED
Publiée
Mise à jour
Attribuée par
Linux
Statut NVD
Modified

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.

Faiblesses (CWE)

Références

Scores

VersionScoreVecteurÉvalué par
CVSS 3.1MEDIUM 5.5CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:HNVD · nvd@nist.gov (Primary)

Références européennes

Avis du CERT-FR

Configurations affectées (CPE NVD)

Produits affectés

ProduitVersions
Linux · Linuxaffected 42fed7ba44e4e8c1fb27b28ad14490cb1daff3c7 < e65a0dc2e85efb28e182aca50218e8a056d0ce04 ; affected 42fed7ba44e4e8c1fb27b28ad14490cb1daff3c7 < 420ce1261907e5dbeda1e4daffd5b6c76f8188c0 ; affected 42fed7ba44e4e8c1fb27b28ad14490cb1daff3c7 < b813e3fd102a959c5b208ed68afe27e0137a561b ; affected 42fed7ba44e4e8c1fb27b28ad14490cb1daff3c7 < 01fe2f885f7813f8aed5d3704b384a97b1116a9e ; affected 42fed7ba44e4e8c1fb27b28ad14490cb1daff3c7 < b36efd2e3e22a329444b6b24fa48df6d20ae66e6 ; affected 42fed7ba44e4e8c1fb27b28ad14490cb1daff3c7 < 4038c57bf61631219b31f1bd6e92106ec7f084dc
Linux · Linuxaffected 3.10 ; unaffected 0 < 3.10 ; unaffected 4.19.317 ≤ 4.19.* ; unaffected 5.4.279 ≤ 5.4.* ; unaffected 5.10.221 ≤ 5.10.* ; unaffected 5.15.162 ≤ 5.15.*

Sources

SourceLicence
CVE List (CVEProject cvelistV5)CVE Program Terms of Use
EPSS (FIRST.org)FIRST — attribution requested
ENISA EUVDENISA — reproduction authorised, source acknowledged
CERT-FR (ANSSI)Licence Ouverte / Etalab 2.0
NVD (NIST) via fkie-cad/nvd-json-data-feedsPublic domain — this product uses data from the NVD API but is not endorsed or certified by the NVD