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

ext4: validate donor file superblock early in EXT4_IOC_MOVE_EXT

Reject the EXT4_IOC_MOVE_EXT ioctl early if the donor file does not
belong to the same superblock as the original file. Currently, this
validation is performed inside ext4_move_extents() by
mext_check_validity(), but only after lock_two_nondirectories() has
already acquired the inode locks. When the donor fd refers to a file
on a different filesystem (e.g., overlayfs), this late validation
creates a circular lock dependency:

CPU0 (overlayfs write) CPU1 (ext4 ioctl)
---- ----
inode_lock(ovl_inode)
mnt_want_write_file(filp)
sb_start_write(ext4_sb) [sb_writers]
backing_file_write_iter()
vfs_iter_write(real_file)
file_start_write(real_file)
sb_start_write(ext4_sb) [blocked by freeze]
lock_two_nondirectories()
inode_lock(ovl_inode) [blocked]

With a concurrent freeze operation holding sb_writers write side, this
forms a deadlock cycle: CPU0 waits for freeze to complete, freeze waits
for CPU1's sb_writers reader to exit, CPU1 waits for CPU0's inode lock.

Since EXT4_IOC_MOVE_EXT exchanges physical extents between two files,
it fundamentally requires both files to reside on the same ext4
filesystem. Moving the superblock check before any lock acquisition
is both semantically correct and eliminates the circular dependency
by ensuring that cross-filesystem donor fds are rejected before
sb_writers or inode locks are taken.
Published: 2026-08-15
Score: 5.5 Medium
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

In the Linux kernel the EXT4_IOC_MOVE_EXT ioctl performs a late validation of the donor file’s superblock, only after inode locks have been taken. If the donor file resides on a different filesystem, such as overlayfs, this late check can introduce a circular lock dependency that triggers a deadlock. This flaw, categorized as CWE‑833, allows an attacker to orchestrate concurrent filesystem operations that exploit the deadlock, potentially causing a system halt or prolonged unresponsiveness.

Affected Systems

All Linux kernel releases that expose the EXT4_IOC_MOVE_EXT ioctl before the patch for CVE‑2026‑74307 is applied are affected. The vulnerability is present in kernel sources that do not include the newly committed superblock validation logic. Operating systems that ship with ext4 as a default filesystem or allow ext4 ioctl usage without verifying the donor file’s superblock are at risk, regardless of the distribution version. No specific vendor or version list is provided in the data.

Risk and Exploitability

The CVSS score is 5.5, and the EPSS score is < 1%. The vulnerability is not included in the CISA KEV catalog. The description indicates that a deadlock occurs only when the EXT4_IOC_MOVE_EXT ioctl is invoked concurrently with a filesystem freeze, implying that both operations must take place on the same node. This inference is based on the presented scenario. The impact of a deadlock can be critical if it brings services to a halt. Whether the deadlock can be triggered remotely or only via local privileged access is not explicitly detailed in the input; the inference that a remote trigger would require an externally exposed ioctl interface is stated here. The EPSS score indicates that automated exploitation is currently unlikely.

Generated by OpenCVE AI on August 22, 2026 at 02:42 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Update the Linux kernel to a version that incorporates the patch for CVE‑2026‑74307.
  • If a kernel upgrade is not immediately possible, restrict the use of the EXT4_IOC_MOVE_EXT ioctl to files residing on the same ext4 filesystem and avoid running overlayfs writes concurrently with ext4 ioctl operations during any filesystem freeze.
  • In scenarios where the ioctl is not required, disable or remove the EXT4_IOC_MOVE_EXT capability from the kernel configuration or the application layer to eliminate the possibility of a deadlock.

Generated by OpenCVE AI on August 22, 2026 at 02:42 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Sat, 22 Aug 2026 01:45:00 +0000

Type Values Removed Values Added
Weaknesses CWE-617

Fri, 21 Aug 2026 00:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-833
References
Metrics threat_severity

None

cvssV3_1

{'score': 5.5, 'vector': 'CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H'}

threat_severity

Moderate


Sat, 15 Aug 2026 17:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-617

Sat, 15 Aug 2026 06:15:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: ext4: validate donor file superblock early in EXT4_IOC_MOVE_EXT Reject the EXT4_IOC_MOVE_EXT ioctl early if the donor file does not belong to the same superblock as the original file. Currently, this validation is performed inside ext4_move_extents() by mext_check_validity(), but only after lock_two_nondirectories() has already acquired the inode locks. When the donor fd refers to a file on a different filesystem (e.g., overlayfs), this late validation creates a circular lock dependency: CPU0 (overlayfs write) CPU1 (ext4 ioctl) ---- ---- inode_lock(ovl_inode) mnt_want_write_file(filp) sb_start_write(ext4_sb) [sb_writers] backing_file_write_iter() vfs_iter_write(real_file) file_start_write(real_file) sb_start_write(ext4_sb) [blocked by freeze] lock_two_nondirectories() inode_lock(ovl_inode) [blocked] With a concurrent freeze operation holding sb_writers write side, this forms a deadlock cycle: CPU0 waits for freeze to complete, freeze waits for CPU1's sb_writers reader to exit, CPU1 waits for CPU0's inode lock. Since EXT4_IOC_MOVE_EXT exchanges physical extents between two files, it fundamentally requires both files to reside on the same ext4 filesystem. Moving the superblock check before any lock acquisition is both semantically correct and eliminates the circular dependency by ensuring that cross-filesystem donor fds are rejected before sb_writers or inode locks are taken.
Title ext4: validate donor file superblock early in EXT4_IOC_MOVE_EXT
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-08-17T05:16:56.046Z

Reserved: 2026-08-15T05:44:03.883Z

Link: CVE-2026-74307

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-08-15T06:22:30.500

Modified: 2026-08-17T06:19:24.907

Link: CVE-2026-74307

cve-icon Redhat

Severity : Moderate

Publid Date: 2026-08-15T00:00:00Z

Links: CVE-2026-74307 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-08-22T02:45:03Z

Weaknesses