Skip to main content
VulnerabilityPublished Updated

CVE-2026-89566: Linux kernel · jbd2: check need_resched() when skipping busy checkpoint buffers

Affects Linux kernelSource CVE Database V5

0

Not known to be exploited · fixed in f9182a85991a0ad5cd2940df6db75f40ad90028c : update Linux kernel when convenient.

Data as of 26 Oct 2026, 13:47 UTC

Severity
Unrated

Rated by Threat Radar · CVSS not yet scored by NVD

EPSS
0.2% chance of exploitation in 30 days – higher than 10% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
Patch
Available – fixed in f9182a85991a0ad5cd2940df6db75f40ad90028c, f213e12ff5c9590b1034ae8da0e6d09665c772d0, f83c23286e54180cdc83a36463a60003534cc290 +5

Exploitation evidence

  1. Disclosed: evidence found.

    CVE published 11 Sep 2026

  2. Detectable: no evidence on record.

    No public nuclei template indexed

  3. Weaponised: no evidence on record.

    No public exploit code indexed in Metasploit or Exploit-DB

  4. Exploited in the wild: no evidence on record.

    Not in CISA KEV and no source reports exploitation

  5. Observed by OffSeq Mirage: no evidence on record.

    No attack traffic recorded by OffSeq Mirage sensors

A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 26 Oct 2026.

What to do

Upgrade to a fixed release listed under Affected software.

Affected software

ProductAffectedFixed in
LinuxLinuxAffected
  • >=5.15.129 <5.16
  • >=6.1.50 <6.2
  • >=6.4.13 <6.5
Fixed in
  • f9182a85991a0ad5cd2940df6db75f40ad90028c
  • f213e12ff5c9590b1034ae8da0e6d09665c772d0
  • f83c23286e54180cdc83a36463a60003534cc290
  • dc7ece0b827fe3b748db685fb85cd2fc3710c3f9
  • 595cac7f1b32d009b97f83dd2b2d6a1a445e9bb4
  • 6.5
  • 6.2
  • 5.16
LinuxLinuxAffected
  • =6.5
Fixed in–

Description

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.

References

Community reviews

Loading reviews…