CVE-2026-89640

CVE-2026-89640

High · published September 12, 2026

CVSS v3.1
7.1
EPSS
0%
Percentile
2.1
In the wild
Unconfirmed
What it is

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

cifs: fix loff_t underflow in cifs_remap_file_range() when len == 0

With len == 0 (clone to EOF), the effective length is computed as:

len = src_inode->i_size - off;

If off > i_size, this is a negative loff_t, corrupting the ByteCount

in the FSCTL_DUPLICATE_EXTENTS_TO_FILE request and inverting the range

in filemap_write_and_wait_range(). The existing off >= i_size check

fires only after the ioctl has already been sent.

Snapshot i_size_read() once for both the bounds check and the length

calculation, eliminating the TOCTOU and 32-bit torn-read risk. Reject

off > src_size with -EINVAL. Treat off == src_size as a no-op,

consistent with __generic_remap_file_range_prep().

The record
Technical detail
CVSS v3.1
7.1 · HIGH
Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:H
CVSS v4.0
Not supplied
EPSS
0.00126 · 2.1th percentile
Published
2026-09-12T00:19Z
References (6)
EPSS history
Timeline
  • 13 SEP 03:23Z
    EPSS moved — → 0%
    epss
  • 11 SEP 19:45Z
    cifs: fix loff_t underflow in cifs_remap_file_range() when len == 0
    cvelistv5