← All Advisories

Linux Kernel fuse-uring Weak-Ordering Data Race on ring->ready Allows Stale fiq->ops Dispatch on Weakly-Ordered Architectures

Last refreshed2026-09-30

Status: NEW  |  Advisory ID: CVE-2026-64588

Key Details

CVECVE-2026-64588
CVSS Score / Version7.8 (High) / CVSS v3.1
Updated2026-08-17
CVSS VectorCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CVSS Proseattack vector is local; attack complexity is low; privileges required is low; user interaction is none; scope is unchanged; confidentiality impact is high; integrity impact is high; availability impact is high.

What to Know

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

fuse-uring: fix data races on ring->ready

On weakly-ordered architectures, the store to fiq->ops can be

reordered past the store to ring->ready, allowing a CPU that sees

ring->ready == true via fuse_uring_ready() to dispatch requests

through a stale fiq->ops pointer. Upgrade the store to

smp_store_release() and the load in fuse_uring_ready() to

smp_load_acquire() so that the preceding WRITE_ONCE(fiq->ops, ...)

is visible to any CPU that observes ring->ready == true.

Additionally, fuse_uring_do_register() publishes ring->ready with

WRITE_ONCE() but the fast-path check reads it with a plain load.

This is a marked-vs-unmarked access that KCSAN will flag. Wrap it in

READ_ONCE() to mark it without adding unnecessary ordering.

Also wrap the fc->ring load in fuse_uring_ready() in READ_ONCE() to

prevent the compiler from reloading it between the NULL check and the

dereference. (NVD)

References

SourceReference
NVDhttps://nvd.nist.gov/vuln/detail/CVE-2026-64588
CVEhttps://www.cve.org/CVERecord?id=CVE-2026-64588