CVE-2025-38580

ext4: fix inode use after free in ext4_end_io_rsv_work()

HIGH
7.8
CVSS Score
Published: August 19, 2025 at 05:03 PM UTC
Updated: August 5, 2026 at 12:44 PM UTC
1 product affected across 1 vendorLinux Kernel

Using Linux by Linux?

Get instant alerts when new vulnerabilities affect Linux - before attackers find them.

Real-time alertsTrack your software stackFree plan available
Severity
HIGH7.8
Exploit prediction
EPSS 0.2%

Description

In the Linux kernel, the following vulnerability has been resolved: ext4: fix inode use after free in ext4_end_io_rsv_work() In ext4_io_end_defer_completion(), check if io_end->list_vec is empty to avoid adding an io_end that requires no conversion to the i_rsv_conversion_list, which in turn prevents starting an unnecessary worker. An ext4_emergency_state() check is also added to avoid attempting to abort the journal in an emergency state. Additionally, ext4_put_io_end_defer() is refactored to call ext4_io_end_defer_completion() directly instead of being open-coded. This also prevents starting an unnecessary worker when EXT4_IO_END_FAILED is set but data_err=abort is not enabled. This ensures that the check in ext4_put_io_end_defer() is consistent with the check in ext4_end_bio(). Otherwise, we might add an io_end to the i_rsv_conversion_list and then call ext4_finish_bio(), after which the inode could be freed before ext4_end_io_rsv_work() is called, triggering a use-after-free issue.

Affected

Our own answer: ranges merged, affected separated from platform-only, with confidence and review flags.

6.15 ≤ v < 6.15.106.15 ≤ v < 6.16.16.15 ≤ v < 6.176.16 ≤ v < 6.16.16.15ce51afb8cc5e1867ea0dfdf5e92ddbe31a1fad5d
Vendor states this is fixed in 469c44e66e2110054949609dde095788320139d0 (fixed)
Vendor states this is fixed in ac999862b98a0f49e858e509f776be51406f1e77 (fixed)
Vendor states this is fixed in c678bdc998754589cea2e6afab9401d7d8312ac4 (fixed)
Vendor states this is fixed in 6.15 (unaffected)
Vendor states this is fixed in 6.15.10 (unaffected)
Vendor states this is fixed in 6.16.1 (unaffected)
Vendor states this is fixed in 6.17 (unaffected)

References (3)

Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/469c44e66e2110054949609dde095788320139d0
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/ac999862b98a0f49e858e509f776be51406f1e77
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/c678bdc998754589cea2e6afab9401d7d8312ac4

CVSS

7.8HIGHLinux
Vector?

Quick Info

StatusMODIFIED
CWE
CWE-416

Get alerted

Stop reading CVE feeds looking for your own stack

Track the products you run and VulnTracker tells you when a new CVE affects them — with what is known about fixing it, and nothing about the rest.

Free plan, no card