CVEvulnerability
CVE-2026-89567
- Status
- Received
- Published
- 2026-09-11
- Last modified
- 2026-10-21
- Assigner
- 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Description
In the Linux kernel, the following vulnerability has been resolved:
jbd2: bound shrinker scans by examined checkpoint buffers
The jbd2 shrinker currently accounts only checkpoint buffers that it
successfully releases against nr_to_scan. Busy buffers therefore do not
consume the scan budget.
If a checkpoint transaction contains mostly busy buffers, the shrinker
can scan its entire checkpoint list while holding journal->j_list_lock.
Large checkpoint lists can result in excessive lock hold times and leave
other CPUs spinning on j_list_lock, causing soft lockups or RCU stalls.
Pass nr_to_scan into journal_shrink_one_cp_list() and decrement it for
every buffer examined, including busy buffers. Pass NULL from checkpoint
cleanup paths so their existing full-list behavior is preserved.
This restores the scan-budget semantics that existed before
journal_shrink_one_cp_list() was changed to always scan a complete
checkpoint list.
References
- https://git.kernel.org/stable/c/15cb16496446b94e67f7abcb049b8e2c75cd3d02 git.kernel.org
- https://git.kernel.org/stable/c/6b5366ba63a58819396045ab146bd37ff9e503c6 git.kernel.org
- https://git.kernel.org/stable/c/71c6b872c746465fa4b5def239cb296173ca8216 git.kernel.org
- https://git.kernel.org/stable/c/c2c0fb364685b8996c357d3b050394959b29d6e0 git.kernel.org
- https://git.kernel.org/stable/c/edf5fcd0469b7467bd5b37a79502c8d9c3257dbb git.kernel.org