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.
Published: 2026-09-11
Score: 4.7 Medium
EPSS: < 1% Very Low
KEV: No
Impact: Denial of Service
Action: Patch Kernel
AI Analysis

Impact

The Linux kernel’s journaling subsystem includes a jbd2 shrinker that frees checkpoint buffers. The bug causes the shrinker to count only successfully released buffers, ignoring busy ones. When a checkpoint transaction has many busy buffers, the shrinker scans the entire list while holding j_list_lock, which can keep that lock for an extended time, causing producing soft lockups or RCU stall conditions. The root effect is a denial of service in the kernel’s memory management and a degradation of system responsiveness.

Affected Systems

The affected software is the Linux kernel, specifically the jbd2 shrinker component. Any kernel version that contains the unpatched jbd2 shrinker logic is vulnerable. Since the vulnerability is catalogued under Linux, it applies to all Linux distributions that ship a kernel containing the bug, regardless of vendor. Affected installations are those running such a kernel prior to the patch being merged.

Risk and Exploitability

The CVSS score of 4.7 indicates moderate severity. The EPSS score is less than 1% and the vulnerability is not listed in the CISA KEV catalog. The likely attack vector—based on the description—requires an application that performs heavy journaling activity to create a large checkpoint list, forcing the shrinker to scan many busy buffers while holding the lock. This scenario is local and non‑trivial, necessitating a process that can generate the workload, and it does not provide remote code execution or privilege escalation. Exploitation is therefore possible but requires precise load patterns that may be difficult to produce reliably.

Generated by OpenCVE AI on September 13, 2026 at 06:35 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Deploy a kernel version fix or apply the specific upstream patch.
  • Reboot into the updated kernel so the new code is active.
  • Monitor kernel logs for RCU stall or soft‑lockup messages and review journaling settings for any anomalous activity.
  • If an update cannot be applied immediately, reduce the journaling scan budget (for example, lower journal.nr_to_scan) as a temporary measure to limit lock hold time.

Generated by OpenCVE AI on September 13, 2026 at 06:35 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Sat, 12 Sep 2026 00:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-835
References
Metrics threat_severity

None

cvssV3_1

{'score': 4.7, 'vector': 'CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H'}

threat_severity

Moderate


Fri, 11 Sep 2026 23:45:00 +0000

Type Values Removed Values Added
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.
Title jbd2: bound shrinker scans by examined checkpoint buffers
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-09-11T19:44:37.332Z

Reserved: 2026-09-11T19:38:34.726Z

Link: CVE-2026-89567

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-09-11T20:19:40.680

Modified: 2026-09-11T20:19:40.680

Link: CVE-2026-89567

cve-icon Redhat

Severity : Moderate

Publid Date: 2026-09-11T19:44:37Z

Links: CVE-2026-89567 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-09-13T06:45:18Z

Weaknesses
  • CWE-835

    Loop with Unreachable Exit Condition ('Infinite Loop')