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

erofs: fix managed cache race for unaligned extents

After unaligned compressed extents were introduced, the following race
could occur:

[Thread 1] [Thread 2]
(z_erofs_fill_bio_vec)
<handle a Z_EROFS_PREALLOCATED_FOLIO folio>
...
filemap_add_folio (1)
(z_erofs_bind_cache)
<the same folio is found..>
..
..
folio_attach_private (2)
filemap_add_folio (3) again

Since (1) is executed but (2) hasn't been executed yet, it's possible
that another thread finds the same managed folio in z_erofs_bind_cache()
for a different pcluster and calls filemap_add_folio() again since
folio->private is still Z_EROFS_PREALLOCATED_FOLIO.

Fix this by explicitly clearing folio->private before making the folio
visible in the managed cache so that another pcluster can simply wait
on the locked managed folio as what we did for other shared cases [1].

This only impacts unaligned data compression (`-E48bit` with zstd,
for example).

[1] Commit 9e2f9d34dd12 ("erofs: handle overlapped pclusters out of
crafted images properly") was originally introduced to handle crafted
overlapped extents, but it addresses unaligned extents as well.
Published: 2026-07-19
Score: 7.8 High
EPSS: < 1% Very Low
KEV: No
Impact: Race Condition Causing File System Corruption
Action: Apply Kernel Update
AI Analysis

Impact

The vulnerability is a race condition in the erofs file system. When unaligned compressed extents are processed concurrently, two threads may add the same folio to the file map before the private flag is cleared, which can corrupt filesystem structures and data. The flaw is identified as concurrency errors (CWE-362) and concurrent updates of shared resources (CWE-367).

Affected Systems

All Linux kernel versions that support erofs and allow unaligned compression, such as the -E48bit zstd option. The issue exists in any kernel build prior to the commit that clears folio->private before exposing the folio to the managed cache. No specific vendor or product ranges beyond the generic Linux kernel are mentioned.

Risk and Exploitability

The CVSS score of 7.8 indicates high severity, yet the EPSS score of less than 1 % suggests a low likelihood of real‑world exploitation. The vulnerability is not listed in the CISA KEV catalog. An attacker who can write to an erofs partition that has unaligned compression enabled could trigger concurrent operations to induce the race, potentially leading to data corruption or denial of service. Overall risk is moderate to high for affected systems, with exploitation unlikely without targeted configurations.

Generated by OpenCVE AI on October 17, 2026 at 10:29 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade the Linux kernel to a release that includes the commit clearing folio->private before it is exposed to the managed cache.
  • Disable unaligned compression on erofs, e.g., avoid using the -E48bit option or remount the filesystem without compression support.
  • Continuously monitor filesystem health and integrity, and enable checksums or regular backups to detect and mitigate corruption.
  • Restrict write access to erofs partitions to trusted users or services to reduce the chance of accidental race triggers.

Generated by OpenCVE AI on October 17, 2026 at 10:29 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Ubuntu USN Ubuntu USN USN-8593-1 Linux kernel vulnerabilities
Ubuntu USN Ubuntu USN USN-8603-1 Linux kernel (Azure) vulnerabilities
Ubuntu USN Ubuntu USN USN-8618-1 Linux kernel vulnerabilities
Ubuntu USN Ubuntu USN USN-8663-1 Linux kernel (NVIDIA) vulnerabilities
Ubuntu USN Ubuntu USN USN-8664-1 Linux kernel (NVIDIA BaseOS) vulnerabilities
Ubuntu USN Ubuntu USN USN-8728-1 Linux kernel (GCP) vulnerabilities
Ubuntu USN Ubuntu USN USN-8728-2 Linux kernel (Azure) vulnerabilities
Ubuntu USN Ubuntu USN USN-8728-3 Linux kernel (Oracle) vulnerabilities
History

Tue, 13 Oct 2026 15:45:00 +0000

Type Values Removed Values Added
Weaknesses CWE-362
CPEs cpe:2.3:o:linux:linux_kernel:7.1:rc1:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:7.1:rc2:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:7.1:rc3:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:7.1:rc4:*:*:*:*:*:*

Mon, 14 Sep 2026 12:00:00 +0000


Thu, 30 Jul 2026 21:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-362

Wed, 22 Jul 2026 00:15:00 +0000


Tue, 21 Jul 2026 22:45:00 +0000

Type Values Removed Values Added
Weaknesses CWE-362

Mon, 20 Jul 2026 14:45:00 +0000

Type Values Removed Values Added
Metrics cvssV3_1

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


Sun, 19 Jul 2026 15:45:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: erofs: fix managed cache race for unaligned extents After unaligned compressed extents were introduced, the following race could occur: [Thread 1] [Thread 2] (z_erofs_fill_bio_vec) <handle a Z_EROFS_PREALLOCATED_FOLIO folio> ... filemap_add_folio (1) (z_erofs_bind_cache) <the same folio is found..> .. .. folio_attach_private (2) filemap_add_folio (3) again Since (1) is executed but (2) hasn't been executed yet, it's possible that another thread finds the same managed folio in z_erofs_bind_cache() for a different pcluster and calls filemap_add_folio() again since folio->private is still Z_EROFS_PREALLOCATED_FOLIO. Fix this by explicitly clearing folio->private before making the folio visible in the managed cache so that another pcluster can simply wait on the locked managed folio as what we did for other shared cases [1]. This only impacts unaligned data compression (`-E48bit` with zstd, for example). [1] Commit 9e2f9d34dd12 ("erofs: handle overlapped pclusters out of crafted images properly") was originally introduced to handle crafted overlapped extents, but it addresses unaligned extents as well.
Title erofs: fix managed cache race for unaligned extents
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-09-14T11:58:35.405Z

Reserved: 2026-07-19T07:54:57.028Z

Link: CVE-2026-64031

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Analyzed

Published: 2026-07-19T16:17:43.250

Modified: 2026-10-13T15:32:44.990

Link: CVE-2026-64031

cve-icon Redhat

Severity :

Publid Date: 2026-07-19T00:00:00Z

Links: CVE-2026-64031 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-10-17T10:30:07Z

Weaknesses
  • CWE-362

    Concurrent Execution using Shared Resource with Improper Synchronization ('Race Condition')

  • CWE-367

    Time-of-check Time-of-use (TOCTOU) Race Condition