GPU VulnDB

Database/Control plane, storage & DevOps

Linux nfsd: copy-notify stateid published before initialisation, freeable by a racing OFFLOAD_CANCEL

UnscoredCVE-2026-89669Control plane, storage & DevOpscurated

Impact

nfsd4_copy_notify() linked the new copy-notify state into the s2s_cp_stateids IDR and the parent's sc_cp_list before finishing initialisation and without holding a caller reference. A racing OFFLOAD_CANCEL that supplies the well-known clientid and a guessable so_id can reach manage_cpntf_state() and free the entry, turning the caller's subsequent reads and writes of the stateid into use-after-free in the file server's kernel. The owning clientid was recorded only after publication, so no ownership check could close the window. On a shared storage node this is a remotely driven kernel memory-corruption primitive affecting every tenant mounting the export.

Who can reach it

A client that can mount the export and issue NFSv4.2 COPY_NOTIFY concurrently with OFFLOAD_CANCEL carrying the crafted clientid. Export authentication applies; no server-local access needed.

What to do

Upgrade to a stable kernel containing the referenced commits and reboot the NFS server, draining or failing over clients first. Servers whose clients never use inter-server copy do not exercise COPY_NOTIFY. The record names commits, not fixed release numbers.

References

Related entries

All Control plane, storage & DevOps entries

This entry is curated: imported from vendor advisories with machine assistance, not yet individually verified. Confirm against your vendor's advisory before acting, and report anything wrong.