CVE Catalog

CVE-2026-92487

Unknown
Published: Translated: NVD NIST

Summary

In the Linux kernel, the exfat filesystem zeroes the page-cache gap below the new valid_size when a shared writable mapping has its valid_size extended by a buffered write or page fault. A store through the mapping can race with this zeroing and be overwritten.

Risk Assessment

A race between a store through the mapping and the zeroing of the gap can lead to data loss or corruption in the exfat filesystem.

Recommendation

Update the Linux kernel to a version containing the fix that zeroes the gap lazily and drops ->map_pages so every first write fault goes through exfat_page_mkwrite().

Other vulnerabilities in Linux kernel

See all
Original NVD description (English source)

In the Linux kernel, the following vulnerability has been resolved: exfat: fix valid_size extension over a shared writable mapping When a shared writable mapping has its valid_size extended by a buffered write or a page fault, exfat zeroes the page-cache gap below the new valid_size. A store through the mapping can race with this zeroing and be overwritten. Fix this by zeroing the gap lazily. Drop ->map_pages so that every first write fault goes through exfat_page_mkwrite(), which advances valid_size to cover the faulting page. With fault-around enabled, a store could install a writable PTE, skip ->page_mkwrite(), and land past valid_size without advancing it. Extending valid_size one faulting page at a time also leaves never-written pages in a large mapping alone. The gap is filled with block granularity, zeroing only the not-uptodate blocks and preserving blocks that may hold data stored through the mapping. On the buffered-write path the invalidate lock is held and the gap is unmapped before zeroing, so a racing store re-faults and, under the inode lock, completes only after the gap has been zeroed and valid_size covers it.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS