PatchSiren cyber security CVE debrief
CVE-2026-45912 Linux CVE debrief
A vulnerability in the Linux kernel's ext4 filesystem could lead to stale extent entries in the extent status tree during extent splitting operations. When ext4_split_extent_at() splits an unwritten extent, the caching of extents during this process may insert truncated ranges as holes into the extent status tree. These holes are not replaced with correct status after the split completes. If a delayed buffer write is subsequently performed on the affected range, it can re-insert the delayed extent and cause errors in space accounting. The issue also creates conflicts with existing extents when caching, which may trigger warnings in future kernel versions with additional extent caching checks.
- Vendor
- Linux
- Product
- Unknown
- CVSS
- MEDIUM 5.5
- CISA KEV
- Not listed in stored evidence
- Original CVE published
- 2026-05-27
- Original CVE updated
- 2026-06-24
- Advisory published
- 2026-05-27
- Advisory updated
- 2026-06-24
Who should care
System administrators managing Linux systems with ext4 filesystems, particularly those handling workloads with direct I/O operations on large files and mixed direct/delayed write patterns. Storage engineers and kernel maintainers responsible for filesystem stability and space accounting integrity. Cloud infrastructure operators providing ext4-based storage services who need to ensure accurate disk space reporting and prevent filesystem corruption.
Technical summary
The vulnerability exists in the ext4 filesystem's extent handling code, specifically in the extent splitting path. When ext4_split_extent_at() is called to split an unwritten extent (commonly triggered by direct I/O writes), the function truncates the existing extent and inserts a new one. During this process, calls to ext4_find_extent() and ext4_cache_extents() may insert the truncated range as a hole into the extent status tree. After the split completes, this hole is not replaced with the correct status. The outer calling functions do not correct this remaining hole. If a delayed buffer write is then performed on the latter part of the split range, it re-inserts the delayed extent and causes space accounting errors. Additionally, if the unwritten extent cache is not shrunk during splitting, ext4_cache_extents() conflicts with existing extents. The fix removes extent caching during the splitting process, as the extent block entries are typically already cached beforehand and caching during split introduces race conditions with stale data.
Defensive priority
medium
Recommended defensive actions
- Apply the relevant stable kernel patches from the Linux kernel stable tree to address the ext4 extent caching issue
- Review systems using ext4 filesystems with heavy direct I/O and delayed write workloads for potential space accounting inconsistencies
- Monitor kernel logs for extent status tree warnings that may indicate this condition
- Plan kernel updates for affected systems, prioritizing those with ext4 filesystems handling large unwritten extents and mixed I/O patterns
Evidence notes
The vulnerability description is sourced from the official CVE record published by CVE.org and mirrored in the NVD. The fix involves multiple stable kernel commits addressing the extent caching behavior in ext4_split_extent_at() and related functions. The issue specifically affects the interaction between direct I/O writes to unwritten extents and subsequent delayed buffer writes.
Sources and references
Verified primary and authoritative sources
-
CVE-2026-45912 CVE Program record
Publisher, destination, and source semantics verified
URL: https://www.cve.org/CVERecord?id=CVE-2026-45912
CVE Program - Official CVE Program record with source-provided CVE metadata.
-
CVE-2026-45912 NVD vulnerability detail
Publisher, destination, and source semantics verified
URL: https://nvd.nist.gov/vuln/detail/CVE-2026-45912
NIST National Vulnerability Database - Official NIST NVD detail page and source-specific vulnerability assessment.
Supplemental references
-
Source reference
Unverified legacy reference
URL: https://git.kernel.org/stable/c/4c2d9dac4d328244f9365b0a1fa27ec802821820
416baaa9-dc9f-4396-8d5f-8c081fb06d67
-
Source reference
Unverified legacy reference
URL: https://git.kernel.org/stable/c/5b1f4290453314e11cd8e15c7baa8a9b76c19b23
416baaa9-dc9f-4396-8d5f-8c081fb06d67
-
Source reference
Unverified legacy reference
URL: https://git.kernel.org/stable/c/692103feca376ae4298c92aa8828015d20f1d87b
416baaa9-dc9f-4396-8d5f-8c081fb06d67
-
Source reference
Unverified legacy reference
URL: https://git.kernel.org/stable/c/8302b5b4aacdbb378f7b1216bb2ee782b5142415
416baaa9-dc9f-4396-8d5f-8c081fb06d67
-
Source reference
Unverified legacy reference
URL: https://git.kernel.org/stable/c/8b4b19a2f96348d70bfa306ef7d4a13b0bcbea79
416baaa9-dc9f-4396-8d5f-8c081fb06d67
-
Source reference
Unverified legacy reference
URL: https://git.kernel.org/stable/c/93b2ebbbcb2e63cfc21a1946dfe91d3aa7952036
416baaa9-dc9f-4396-8d5f-8c081fb06d67
-
Source reference
Unverified legacy reference
URL: https://git.kernel.org/stable/c/96007fd3c106aea773c1afae2d6f64cceb6da208
416baaa9-dc9f-4396-8d5f-8c081fb06d67
Methodology and review provenance
AI-assisted synthesis based on stored public vulnerability evidence. System validation, approval state, and publication status do not by themselves establish human review of this revision. PatchSiren helps prioritize defensive review and does not prove exposure or remediation on any system.