Description
In the Linux kernel, the following vulnerability has been resolved: jbd2: fix integer underflow in jbd2_journal_initialize_fast_commit() jbd2_journal_initialize_fast_commit() validates journal capacity by checking (journal->j_last - num_fc_blks < JBD2_MIN_JOURNAL_BLOCKS). Both j_last and num_fc_blks are unsigned, so when num_fc_blks exceeds j_last the subtraction wraps to a large value, bypassing the bounds check. The resulting underflow corrupts j_last, j_fc_first, and j_free, leading to journal abort. Fix by checking num_fc_blks against j_last before the subtraction, returning -EFSCORRUPTED.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
6866d7b3f2bb4f011041ba54c98b1584497fe2fd to < aa90f00932bf572d6ef284c977c2a60b39c13bd6affected6866d7b3f2bb4f011041ba54c98b1584497fe2fd to < e144ad0250f77e23e28949587b8b57e40dc3b512affected6866d7b3f2bb4f011041ba54c98b1584497fe2fd to < 4b48dcb88bb9117e3d3f051175a9a8b7cff7f8b6affected6866d7b3f2bb4f011041ba54c98b1584497fe2fd to < fb9b49618ed7296ebfad62a3835da8945f727001affected6866d7b3f2bb4f011041ba54c98b1584497fe2fd to < 4450dcaadf7d4aae8b6e4223b5d6ee4eb77097a9affected6866d7b3f2bb4f011041ba54c98b1584497fe2fd to < 78955fdce8ff654e6d33a2fa90882a1e7eb26330affected6866d7b3f2bb4f011041ba54c98b1584497fe2fd to < a58fc10adf503969fec2007b5afe8987258046c4affected6866d7b3f2bb4f011041ba54c98b1584497fe2fd to < 289a2ca0c9b7eae74f93fc213b0b971669b8683daffected
Linux Linux
Default version status: affected
5.10affected0 to < 5.10unaffected5.10.266 to ≤ 5.10.*unaffected5.15.212 to ≤ 5.15.*unaffected6.1.178 to ≤ 6.1.*unaffected6.6.145 to ≤ 6.6.*unaffected6.12.97 to ≤ 6.12.*unaffected6.18.40 to ≤ 6.18.*unaffected7.1.5 to ≤ 7.1.*unaffected7.2 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/aa90f00932bf572d6ef284c977c2a60b39c13bd6 ↗
- https://git.kernel.org/stable/c/e144ad0250f77e23e28949587b8b57e40dc3b512 ↗
- https://git.kernel.org/stable/c/4b48dcb88bb9117e3d3f051175a9a8b7cff7f8b6 ↗
- https://git.kernel.org/stable/c/fb9b49618ed7296ebfad62a3835da8945f727001 ↗
- https://git.kernel.org/stable/c/4450dcaadf7d4aae8b6e4223b5d6ee4eb77097a9 ↗
- https://git.kernel.org/stable/c/78955fdce8ff654e6d33a2fa90882a1e7eb26330 ↗
- https://git.kernel.org/stable/c/a58fc10adf503969fec2007b5afe8987258046c4 ↗
- https://git.kernel.org/stable/c/289a2ca0c9b7eae74f93fc213b0b971669b8683d ↗