CVE-2024-42315
Severity CVSS v4.0:
Pending analysis
Type:
Unavailable / Other
Publication date:
17/08/2024
Last modified:
03/11/2025
Description
In the Linux kernel, the following vulnerability has been resolved:<br />
<br />
exfat: fix potential deadlock on __exfat_get_dentry_set<br />
<br />
When accessing a file with more entries than ES_MAX_ENTRY_NUM, the bh-array<br />
is allocated in __exfat_get_entry_set. The problem is that the bh-array is<br />
allocated with GFP_KERNEL. It does not make sense. In the following cases,<br />
a deadlock for sbi->s_lock between the two processes may occur.<br />
<br />
CPU0 CPU1<br />
---- ----<br />
kswapd<br />
balance_pgdat<br />
lock(fs_reclaim)<br />
exfat_iterate<br />
lock(&sbi->s_lock)<br />
exfat_readdir<br />
exfat_get_uniname_from_ext_entry<br />
exfat_get_dentry_set<br />
__exfat_get_dentry_set<br />
kmalloc_array<br />
...<br />
lock(fs_reclaim)<br />
...<br />
evict<br />
exfat_evict_inode<br />
lock(&sbi->s_lock)<br />
<br />
To fix this, let&#39;s allocate bh-array with GFP_NOFS.
Impact
Base Score 3.x
5.50
Severity 3.x
MEDIUM
Vulnerable products and versions
| CPE | From | Up to |
|---|---|---|
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.2 (including) | 6.6.44 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.7 (including) | 6.10.3 (excluding) |
To consult the complete list of CPE names with products and versions, see this page
References to Advisories, Solutions, and Tools
- https://git.kernel.org/stable/c/1d1970493c289e3f44b9ec847ed26a5dbdf56a62
- https://git.kernel.org/stable/c/632fb232b6bbf8277edcbe9ecd4b4d98ecb122eb
- https://git.kernel.org/stable/c/89fc548767a2155231128cb98726d6d2ea1256c9
- https://git.kernel.org/stable/c/a7ac198f8dba791e3144c4da48a5a9b95773ee4b
- https://git.kernel.org/stable/c/c052f775ee6ccacd3c97e4cf41a2a657e63d4259
- https://git.kernel.org/stable/c/cd1c7858641384191ff7033fb1fc65dfcd559c6f
- https://lists.debian.org/debian-lts-announce/2025/03/msg00001.html
- https://lists.debian.org/debian-lts-announce/2025/03/msg00002.html



