CVE-2026-89566: Linux

EPSS: 0.2% chance of exploitation in the next 30 days.

In the Linux kernel, the following vulnerability has been resolved: jbd2: check need_resched() when skipping busy checkpoint buffers journal_shrink_one_cp_list() skips busy checkpoint buffers when called with JBD2_SHRINK_BUSY_SKIP. The continue statement on this path also skips the need_resched() check at the end of the loop body. Consequently, when a checkpoint list contains mostly busy buffers, the shrinker can walk the entire list while holding journal->j_list_lock, even when a reschedule has been requested. Large checkpoint lists under memory pressure can therefore cause long lock hold times and leave other CPUs spinning on j_list_lock, resulting in soft lockups or RCU stalls. Route the busy-buffer path through the need_resched() check so that the shrinker can release j_list_lock and reschedule promptly, restoring parity with the clean-buffer path, which already checks need_resched(). This does not change which checkpoint buffers are eligible for removal.

Affected products

  • Linux Linux: from 5.15.129, before 5.16 (fixed in 5.16); from 6.1.50, before 6.2 (fixed in 6.2); from 6.4.13, before 6.5 (fixed in 6.5); from 6.5, before 6.12.109 (fixed in 6.12.109); from 6.13, before 6.18.50 (fixed in 6.18.50); from 6.19, before 7.2.4 (fixed in 7.2.4)

Published 2026-09-11. Last modified 2026-09-11.