CVE-2026-46080

ocfs2: split transactions in dio completion to avoid credit exhaustion

State
Published
Severity
Not scored
Published
May 27, 2026
Updated
Jun 14, 2026
Reserved
May 13, 2026

Read the record on cve.org

Description

In the Linux kernel, the following vulnerability has been resolved:

ocfs2: split transactions in dio completion to avoid credit exhaustion

During ocfs2 dio operations, JBD2 may report warnings via following call trace: ocfs2_dio_end_io_write ocfs2_mark_extent_written ocfs2_change_extent_flag ocfs2_split_extent ocfs2_try_to_merge_extent ocfs2_extend_rotate_transaction ocfs2_extend_trans jbd2__journal_restart start_this_handle output: JBD2: kworker/6:2 wants too many credits credits:5450 rsv_credits:0 max:5449

To prevent exceeding the credits limit, modify ocfs2_dio_end_io_write() to handle extents in a batch of transaction.

Additionally, relocate ocfs2_del_inode_from_orphan(). The orphan inode should only be removed from the orphan list after the extent tree update is complete. This ensures that if a crash occurs in the middle of extent tree updates, we won't leave stale blocks beyond EOF.

This patch also changes the logic for updating the inode size and removing orphan, making it similar to ext4_dio_write_end_io(). Both operations are performed only when everything looks good.

Finally, thanks to Jans and Joseph for providing the bug fix prototype and suggestions.

Scores

The record has no CVSS score.

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • c15471f79506830f80eca0e7fe09b8213953ab5f to before 97c03c0e9f73a5049794b3c69ee60fb5e8b0ebd8Affected
  • c15471f79506830f80eca0e7fe09b8213953ab5f to before 1e99bb19994246514d63e656492904176f9d5eddAffected
  • c15471f79506830f80eca0e7fe09b8213953ab5f to before 91e05ac2336d00d5b99fc774be4bd50039084796Affected
  • c15471f79506830f80eca0e7fe09b8213953ab5f to before 886f97fa59d0bbfa9859fb1a66dd9e014b522d89Affected
  • c15471f79506830f80eca0e7fe09b8213953ab5f to before ea5bb1d20da756e4f41a48dad42b2e7d6e73f71eAffected
  • c15471f79506830f80eca0e7fe09b8213953ab5f to before 3c636a3edca9c3f180b3079f94fe7e115730d9c6Affected
  • c15471f79506830f80eca0e7fe09b8213953ab5f to before 069c3fb310e9336cf48cfdf8748a32c29fd0193dAffected
  • c15471f79506830f80eca0e7fe09b8213953ab5f to before d647c5b2fbf81560818dacade360abc8c00a9665Affected
LinuxLinux
  • 4.6Affected
  • before 4.6Not affected
  • 5.10.258 through 5.10.*Not affected
  • 5.15.209 through 5.15.*Not affected
  • 6.1.175 through 6.1.*Not affected
  • 6.6.140 through 6.6.*Not affected
  • 6.12.86 through 6.12.*Not affected
  • 6.18.27 through 6.18.*Not affected
  • 7.0.4 through 7.0.*Not affected
  • 7.1 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.