exfat: fix potential deadlock on __exfat_get_dentry_set (Linux Linux)

CVE-2024-42315
MEDIUM 5.5

En bref

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

Description

In the Linux kernel, the following vulnerability has been resolved: exfat: fix potential deadlock on __exfat_get_dentry_set When accessing a file with more entries than ES_MAX_ENTRY_NUM, the bh-array is allocated in __exfat_get_entry_set. The problem is that the bh-array is allocated with GFP_KERNEL. It does not make sense. In the following cases, a deadlock for sbi->s_lock between the two processes may occur. CPU0 CPU1 ---- ---- kswapd balance_pgdat lock(fs_reclaim) exfat_iterate lock(&sbi->s_lock) exfat_readdir exfat_get_uniname_from_ext_entry exfat_get_dentry_set __exfat_get_dentry_set kmalloc_array ... lock(fs_reclaim) ... evict exfat_evict_inode lock(&sbi->s_lock) To fix this, let's allocate bh-array with GFP_NOFS.

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 bd3bdb9e0d656f760b11d0c638d35d7f7068144d < 632fb232b6bbf8277edcbe9ecd4b4d98ecb122eb ; affected 92dcd7d6c6068bf4fd35a6f64d606e27d634807e < c052f775ee6ccacd3c97e4cf41a2a657e63d4259 ; affected d8fe01ad2d8ab33aaf8f2efad9e8f1dae11c4b0c < cd1c7858641384191ff7033fb1fc65dfcd559c6f ; affected a3ff29a95fde16906304455aa8c0bd84eb770258 < a7ac198f8dba791e3144c4da48a5a9b95773ee4b ; affected a3ff29a95fde16906304455aa8c0bd84eb770258 < 1d1970493c289e3f44b9ec847ed26a5dbdf56a62 ; affected a3ff29a95fde16906304455aa8c0bd84eb770258 < 89fc548767a2155231128cb98726d6d2ea1256c9
Linux · Linuxaffected 6.2 ; unaffected 0 < 6.2 ; unaffected 5.10.232 ≤ 5.10.* ; unaffected 5.15.175 ≤ 5.15.* ; unaffected 6.6.44 ≤ 6.6.* ; unaffected 6.10.3 ≤ 6.10.*

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