← CVE Intelligence

CVE-2024-42102

Revert "mm/writeback: fix possible divide-by-zero in wb_dirty_limits(), again" PUBLISHED

Description (CNA)

In the Linux kernel, the following vulnerability has been resolved: Revert "mm/writeback: fix possible divide-by-zero in wb_dirty_limits(), again" Patch series "mm: Avoid possible overflows in dirty throttling". Dirty throttling logic assumes dirty limits in page units fit into 32-bits. This patch series makes sure this is true (see patch 2/2 for more details). This patch (of 2): This reverts commit 9319b647902cbd5cc884ac08a8a6d54ce111fc78. The commit is broken in several ways. Firstly, the removed (u64) cast from the multiplication will introduce a multiplication overflow on 32-bit archs if wb_thresh * bg_thresh >= 1<<32 (which is actually common - the default settings with 4GB of RAM will trigger this). Secondly, the div64_u64() is unnecessarily expensive on 32-bit archs. We have div64_ul() in case we want to be safe & cheap. Thirdly, if dirty thresholds are larger than 1<<32 pages, then dirty balancing is going to blow up in many other spectacular ways anyway so trying to fix one possible overflow is just moot.

Affected (CNA)

Vendor / productVersions
Linux / Linuxaffected c593d26fb5d577ef31b6e49a31e08ae3ebc1bc1e before 253f9ea7e8e53a5176bd80ceb174907b10724c1a; affected 1f12e4b3284d6c863f272eb2de0d4248ed211cf4 before 23a28f5f3f6ca1e4184bd0e9631cd0944cf1c807; affected 81e7d2530d458548b90a5c5e76b77ad5e5d1c0df before 145faa3d03688cbb7bbaaecbd84c01539852942c; affected 5099871b370335809c0fd1abad74d9c7c205d43f before 2820005edae13b140f2d54267d1bd6bb23915f59; affected 16b1025eaa8fc223ab4273ece20d1c3a4211a95d before cbbe17a324437c0ff99881a3ee453da45b228a00; affected ec18ec230301583395576915d274b407743d8f6c before f6620df12cb6bdcad671d269debbb23573502f9d; affected 9319b647902cbd5cc884ac08a8a6d54ce111fc78 before 000099d71648504fb9c7a4616f92c2b70c3e44ec; affected 9319b647902cbd5cc884ac08a8a6d54ce111fc78 before 30139c702048f1097342a31302cbd3d478f50c63; affected 65977bed167a92e87085e757fffa5798f7314c9f; affected 4.19.307 before 4.19.318; affected 5.4.269 before 5.4.280; affected 5.10.210 before 5.10.222; affected 5.15.149 before 5.15.163; affected 6.1.79 before 6.1.98; affected 6.6.18 before 6.6.39; affected 6.7.6 before 6.8
Linux / Linuxaffected 6.8; unaffected 0 before 6.8; unaffected 4.19.318 through 4.19.*; unaffected 5.4.280 through 5.4.*; unaffected 5.10.222 through 5.10.*; unaffected 5.15.163 through 5.15.*; unaffected 6.1.98 through 6.1.*; unaffected 6.6.39 through 6.6.*; unaffected 6.9.9 through 6.9.*; unaffected 6.10 through *

CWE

No CWE identifiers supplied.

References

ADP enrichment

CVE

No English description supplied.

CISA-ADP

No English description supplied.

No references supplied.