Answer in brief
CVE-2026-45858 records a Medium severity (CVSS 5.5) vulnerability in ext4: don't zero the entire extent if EXT4_EXT_DATA_PARTIAL_VALID1. The current sources do not mark it as known exploited. The current feed maps Linux/Linux (generic), Linux/Linux (generic). Check affected ranges and fixed versions before updating.
Analysis pending evidence review
HOL Guard separates source facts from reviewed analysis. See the methodology.
CVSS is 5.5. The current sources do not mark it as known exploited. Treat this as a source-backed prioritization signal, not a statement about your environment.
Analysis status
Analysis pending evidence review
Factual feed record only; HOL analysis is not approved for indexing. Read the methodology.
The current feed maps Linux/Linux (generic), Linux/Linux (generic). Check affected ranges and fixed versions before updating.
| Package | Affected range | Fixed version |
|---|---|---|
| Linux/Linuxgeneric | >=dee1f973ca341c266229faa5a1a5bb268bed3531 <58ddae5d77b1db3a27b891c75a8fa120239ac092 || >=dee1f973ca341c266229faa5a1a5bb268bed3531 <d17857b4fb9ba5745b59be0ef38fd532991fccbf || >=dee1f973ca341c266229faa5a1a5bb268bed3531 <d67c8ecf3d8fda9b8ef80e6f665d84b6d6ac9d88 || >=dee1f973ca341c266229faa5a1a5bb268bed3531 <7015fcf473796e1d2d876f241bd9e0c36f3d4eef || >=dee1f973ca341c266229faa5a1a5bb268bed3531 <1bf6974822d1dba86cf11b5f05498581cf3488a2 || 814a7833df19e1de7447f870ae890adb12561627 || 4319fd00002630a761fa5559a086f11ed7623006 || e28b27be06c5e6a5236c0c0b370ca0768ab086bb || >=3.2.33 <3.3 || >=3.4.16 <3.5 || >=3.6.4 <3.7 | 58ddae5d77b1db3a27b891c75a8fa120239ac092, d17857b4fb9ba5745b59be0ef38fd532991fccbf, d67c8ecf3d8fda9b8ef80e6f665d84b6d6ac9d88, 7015fcf473796e1d2d876f241bd9e0c36f3d4eef, 1bf6974822d1dba86cf11b5f05498581cf3488a2, 3.3, 3.5, 3.7 |
| Linux/Linuxgeneric | 3.7 | Not reported |
Published upstream
May 27, 2026
Evidence: source:cvelist:source_dates:source-dates:recordSource modified
Jun 25, 2026
Evidence: source:cvelist:source_dates:source-dates:recordFirst seen by HOL
Jun 25, 2026
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.
Quoted source text, attributed separately from HOL analysis.
Answer in brief
CVE-2026-45858 records a Medium severity (CVSS 5.5) vulnerability in ext4: don't zero the entire extent if EXT4_EXT_DATA_PARTIAL_VALID1. The current sources do not mark it as known exploited. The current feed maps Linux/Linux (generic), Linux/Linux (generic). Check affected ranges and fixed versions before updating.
Analysis pending evidence review
HOL Guard separates source facts from reviewed analysis. See the methodology.
CVSS is 5.5. The current sources do not mark it as known exploited. Treat this as a source-backed prioritization signal, not a statement about your environment.
Analysis status
Analysis pending evidence review
Factual feed record only; HOL analysis is not approved for indexing. Read the methodology.
The current feed maps Linux/Linux (generic), Linux/Linux (generic). Check affected ranges and fixed versions before updating.
| Package | Affected range | Fixed version |
|---|---|---|
| Linux/Linuxgeneric | >=dee1f973ca341c266229faa5a1a5bb268bed3531 <58ddae5d77b1db3a27b891c75a8fa120239ac092 || >=dee1f973ca341c266229faa5a1a5bb268bed3531 <d17857b4fb9ba5745b59be0ef38fd532991fccbf || >=dee1f973ca341c266229faa5a1a5bb268bed3531 <d67c8ecf3d8fda9b8ef80e6f665d84b6d6ac9d88 || >=dee1f973ca341c266229faa5a1a5bb268bed3531 <7015fcf473796e1d2d876f241bd9e0c36f3d4eef || >=dee1f973ca341c266229faa5a1a5bb268bed3531 <1bf6974822d1dba86cf11b5f05498581cf3488a2 || 814a7833df19e1de7447f870ae890adb12561627 || 4319fd00002630a761fa5559a086f11ed7623006 || e28b27be06c5e6a5236c0c0b370ca0768ab086bb || >=3.2.33 <3.3 || >=3.4.16 <3.5 || >=3.6.4 <3.7 | 58ddae5d77b1db3a27b891c75a8fa120239ac092, d17857b4fb9ba5745b59be0ef38fd532991fccbf, d67c8ecf3d8fda9b8ef80e6f665d84b6d6ac9d88, 7015fcf473796e1d2d876f241bd9e0c36f3d4eef, 1bf6974822d1dba86cf11b5f05498581cf3488a2, 3.3, 3.5, 3.7 |
| Linux/Linuxgeneric | 3.7 | Not reported |
Published upstream
May 27, 2026
Evidence: source:cvelist:source_dates:source-dates:recordSource modified
Jun 25, 2026
Evidence: source:cvelist:source_dates:source-dates:recordFirst seen by HOL
Jun 25, 2026
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.
Quoted source text, attributed separately from HOL analysis.