CVE-2026-98124

Source
https://cve.org/CVERecord?id=CVE-2026-98124
Import Source
https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2026-98124.json
JSON Data
https://api.test.osv.dev/v1/vulns/CVE-2026-98124
Downstream
AZL (1)
BELL (1)
CGA (102)
DEBIAN (1)
openSUSE (1)
UBUNTU (1)
Related
Published
2026-09-25T10:36:06Z
Modified
2026-10-24T02:34:02Z
Summary
smb/client: invalidate fscache for fallocate range operations
Details

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

smb/client: invalidate fscache for fallocate range operations

smb3_zero_range(), smb3_punch_hole(), smb3_insert_range(), and smb3_collapse_range() modify file contents through server-side range operations. These operations discard the affected page cache, but leave the FS-Cache cookie valid, so a later read may return data cached before the range operation.

Fix this by invalidating FS-Cache after outstanding I/O has completed and before modifying the file on the server.

Run the following as root on a CIFS mount with fsc enabled and an active CacheFiles backend:

    bash -c '
            MNT=/mnt/cifs
            FILE="$MNT/repro"

            # Generate four 1 MiB random blocks: [A][B][C][D].
            dd if=/dev/urandom of=/tmp/src bs=1M count=4 status=none

            # Expected contents after zeroing B: [A][zero][C][D].
            cp /tmp/src /tmp/expected
            dd if=/dev/zero of=/tmp/expected bs=1M seek=1 count=1 \
                    conv=notrunc status=none
            cp /tmp/src "$FILE"

            # Populate FS-Cache, then discard the page cache.
            sync
            echo 1 > /proc/sys/vm/drop_caches
            cat "$FILE" > /dev/null
            sync
            echo 1 > /proc/sys/vm/drop_caches

            fallocate --zero-range -o 1M -l 1M "$FILE"

            if cmp -s /tmp/expected "$FILE"; then
                    echo "readback: OK"
            else
                    echo "readback: STALE DATA"
            fi
    '

Before this change, the readback differs from /tmp/expected:

    readback: STALE DATA

After this change, it matches:

    readback: OK
Database specific
{
    "cna_assigner": "Linux",
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/98xxx/CVE-2026-98124.json"
}
References

Affected packages

Git / git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

Affected ranges

Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
31742c5a331766bc7df6b0d525df00c6cd20d5a6
Fixed
cc7202a51b8777a757bda9dcfbf339f828c6a130
Fixed
dd8b1e808f5c19479e6ed47e2f88a1fd46f8b0e5
Fixed
93c6e5a8d7c5071d586c1411596d5db5faad22b2
Fixed
448ba0ae65ca61064183564d2983c9aa59bd6ba7

Database specific

source
"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2026-98124.json"

Linux / Kernel

Package

Name
Kernel

Affected ranges

Type
ECOSYSTEM
Events
Introduced
3.17.0
Fixed
6.6.160
Type
ECOSYSTEM
Events
Introduced
6.7.0
Fixed
6.12.114
Type
ECOSYSTEM
Events
Introduced
6.13.0
Fixed
7.2.7

Database specific

source
"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2026-98124.json"