CVE Database
/

CVE-2024-42316

Back to search

CVE-2024-42316

Published: Aug 17, 2024

Modified: May 11, 2026

PUBLISHED

Description

In the Linux kernel, the following vulnerability has been resolved: mm/mglru: fix div-by-zero in vmpressure_calc_level() evict_folios() uses a second pass to reclaim folios that have gone through page writeback and become clean before it finishes the first pass, since folio_rotate_reclaimable() cannot handle those folios due to the isolation. The second pass tries to avoid potential double counting by deducting scan_control->nr_scanned. However, this can result in underflow of nr_scanned, under a condition where shrink_folio_list() does not increment nr_scanned, i.e., when folio_trylock() fails. The underflow can cause the divisor, i.e., scale=scanned+reclaimed in vmpressure_calc_level(), to become zero, resulting in the following crash: [exception RIP: vmpressure_work_fn+101] process_one_work at ffffffffa3313f2b Since scan_control->nr_scanned has no established semantics, the potential double counting has minimal risks. Therefore, fix the problem by not deducting scan_control->nr_scanned in evict_folios().

VendorProductVersions

Linux

Linux

affected
359a5e1416caaf9ce28396a65ed3e386cc5de663 - < 8de7bf77f21068a5f602bb1e59adbc5ab533509d
affected
359a5e1416caaf9ce28396a65ed3e386cc5de663 - < d6510f234c7d117790397f9bb150816b0a954a04
affected
359a5e1416caaf9ce28396a65ed3e386cc5de663 - < a39e38be632f0e1c908d70d1c9cd071c03faf895
affected
359a5e1416caaf9ce28396a65ed3e386cc5de663 - < 8b671fe1a879923ecfb72dda6caf01460dd885ef

Linux

Linux

affected
6.1
unaffected
0 - < 6.1
unaffected
6.1.103 - <= 6.1.*
unaffected
6.6.44 - <= 6.6.*
unaffected
6.10.3 - <= 6.10.*

+1 more versions

Security Training

Train your team to recognize and prevent security threats with our comprehensive security awareness program.

Start Training

Vulnerability Scanning

Discover vulnerabilities in your applications and infrastructure before attackers do.

Scan Now