GPU VulnDB

Database/Kernel, userspace & hypervisor

Linux NFS localio: reference leak on nfs_uuid_add_file failure pins an nfsd_file and blocks netns teardown

UnscoredCVE-2026-89715Kernel, userspace & hypervisorcurated

Impact

When nfs_uuid_add_file() races with nfs_uuid_put() tearing down uuid->net, it returns -ENXIO without publishing nfl->nfs_uuid, so the later close path is a no-op. Meanwhile nfsd_open_local_fh() has already handed back a caller-owned nfsd_file reference and an embedded nfsd_net reference, and both are leaked on that error branch. Each occurrence pins one nfsd_file and its underlying struct file, dentry and inode, plus one nfsd_net_ref, which blocks nfsd_net and network-namespace teardown. On a node that repeatedly creates and destroys netns - anything running containers against a co-located NFS server with localio enabled - leaked namespaces accumulate and the node eventually needs a reboot to recover. The trigger is a race, so exposure depends on churn rather than on an attacker.

Who can reach it

Local, on a node that both serves and mounts NFS with the localio fast path active. Triggered by the race between opening a localio file handle and namespace teardown; no authentication step and no remote reach.

What to do

Patch the kernel on nodes using NFS localio so the error path releases the caller-owned file ref and its net ref, and reboot to reclaim already-pinned namespaces. If a reboot is not available, disabling the localio fast path removes the code path, at a performance cost. Nodes without localio are unaffected.

References

Related entries

All Kernel, userspace & hypervisor 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.