CVE-2026-64588 PUBLISHED

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

Assigner: Linux
Reserved: 19.07.2026 Published: 06.08.2026 Updated: 06.08.2026

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.

Product Status

Vendor Linux
Product Linux
Versions Default: unaffected
  • affected from c2c9af9a0b13261c36909036057a116f2edb5e1a to b156bb9966972122b148acab8bdf415cdb8176a3 (excl.)
  • affected from c2c9af9a0b13261c36909036057a116f2edb5e1a to d01a09b442cb786cd44ccc7c84d57e2856d6737c (excl.)
  • affected from c2c9af9a0b13261c36909036057a116f2edb5e1a to 46725a0056c884cf58a6897f222892807327d82d (excl.)
Vendor Linux
Product Linux
Versions Default: affected
  • Version 6.14 is affected
  • unaffected from 0 to 6.14 (excl.)
  • unaffected from 6.18.39 to 6.18.* (incl.)
  • unaffected from 7.1.4 to 7.1.* (incl.)
  • unaffected from 7.2-rc1 to * (incl.)

References