Back to CVE records
Medium 5.5Published May 27, 2026

CVE-2026-45858ext4: don't zero the entire extent if EXT4_EXT_DATA_PARTIAL_VALID1

Updated under an hour ago ()

Does this affect you?

It affects Linux and 1 other product. Add what you run to find out whether that includes you.

No exploitation reported and no EPSS estimate yet.

In the Linux kernel, the following vulnerability has been resolved: ext4: don't zero the entire extent if EXT4_EXT_DATA_PARTIAL_VALID1 When allocating initialized blocks from a large unwritten extent, or when splitting an unwritten extent during end I/O and converting it to initialized, there is currently a potential issue of stale data if the extent needs to be split in the middle. 0 A B N [UUUUUUUUUUUU] U: unwritten extent [--DDDDDDDD--] D: valid data |<- ->| ----> this range needs to be initialized ext4_split_extent() first try to split this extent at B with EXT4_EXT_DATA_ENTIRE_VALID1 and EXT4_EXT_MAY_ZEROOUT flag set, but ext4_split_extent_at() failed to split this extent due to temporary lack of space. It zeroout B to N and mark the entire extent from 0 to N as written. 0 A B N [WWWWWWWWWWWW] W: written extent [SSDDDDDDDDZZ] Z: zeroed, S: stale data ext4_split_extent() then try to split this extent at A with EXT4_EXT_DATA_VALID2 flag set. This time, it split successfully and left a stale written extent from 0 to A. 0 A B N [WW|WWWWWWWWWW] [SS|DDDDDDDDZZ] Fix this by pass EXT4_EXT_DATA_PARTIAL_VALID1 to ext4_split_extent_at() when splitting at B, don't convert the entire extent to written and left it as unwritten after zeroing out B to N. The remaining work is just like the standard two-part split. ext4_split_extent() will pass the EXT4_EXT_DATA_VALID2 flag when it calls ext4_split_extent_at() for the second time, allowing it to properly handle the split. If the split is successful, it will keep extent from 0 to A as unwritten.

CVSS
5.5 MEDIUM (v3.1, NVD)CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Weakness (CWE)
Not given
Known exploited
Not in CISA's KEV catalog
EPSS (exploitation in the next 30 days)
Not loaded for this CVE
Assigned by
Linux
NVD analysis
Analyzed
Record last updated
May 30, 2026
First seen by InfoSec Signals
Oct 9, 2026

Affected products

Affected products
Linux Linux
linux:linux (from the name)
from dee1f973ca341c266229faa5a1a5bb268bed3531 before 58ddae5d77b1db3a27b891c75a8fa120239ac092; from dee1f973ca341c266229faa5a1a5bb268bed3531 before d17857b4fb9ba5745b59be0ef38fd532991fccbf; from dee1f973ca341c266229faa5a1a5bb268bed3531 before d67c8ecf3d8fda9b8ef80e6f665d84b6d6ac9d88; from dee1f973ca341c266229faa5a1a5bb268bed3531 before 7015fcf473796e1d2d876f241bd9e0c36f3d4eef; from dee1f973ca341c266229faa5a1a5bb268bed3531 before 1bf6974822d1dba86cf11b5f05498581cf3488a2; 814a7833df19e1de7447f870ae890adb12561627; 4319fd00002630a761fa5559a086f11ed7623006; e28b27be06c5e6a5236c0c0b370ca0768ab086bb; and 3 more ranges
CNA record
linux linux_kernel
linux:linux_kernel
from 3.2.33 before 3.3; from 3.4.16 before 3.5; from 3.6.4 before 3.7; from 3.7.1 before 6.6.130; from 6.7 before 6.12.75; from 6.13 before 6.18.14; from 6.19 before 6.19.4; 3.7; and 6 more ranges
NVD

References

  • patch
  • patch
  • patch
  • patch
  • patch

The CVE record is authoritative. Products marked “from the name” were identified from the CNA's free-text names, not a CPE, and are matched less certainly. This product uses the NVD API but is not endorsed or certified by the NVD.

Your cookie choices
We use essential cookies to run this site, and, only with your consent, an advertising cookie from Google to measure whether our ads lead to sign-ups and subscriptions. See our for details.