GPU VulnDB

Database/Kernel, userspace & hypervisor

Linux kernel nfsd: use-after-free on stale ACL pointers when fetching the default ACL fails

CVSS 9.8CVE-2025-21796Kernel, userspace & hypervisorcurated

Impact

When the in-kernel NFS server fails to fetch acl_default, it releases both acl_access and acl_default but leaves acl_access still pointing at the freed posix_acl. The release path in nfs3svc_release_getacl then drops a reference on freed memory, producing a refcount underflow warning and a use-after-free; on a kernel built with panic_on_warn the node panics outright. For operators this is an availability problem on the fileserver, not a tenant-to-tenant escape: a host exporting NFS to the cluster can be crashed by a client issuing an NFSv3 GETACL against a path where the default-ACL lookup fails. On fleets where home directories, datasets or checkpoints come off a Linux NFS server, losing that server stalls every job that was reading from it, which is far more expensive than the single node. GPU compute nodes that only mount NFS are unaffected - the bug is in the server, nfsd.

Who can reach it

Any NFS client that can reach the server's nfsd and issue an NFSv3 GETACL request - so anyone on the storage network, within whatever export and authentication policy the server enforces. Not reachable at all on hosts that do not run the in-kernel NFS server.

What to do

Take the stable kernel update containing the fix (nfsd: clear acl_access/acl_default after releasing them) from your distribution, or the upstream stable commits. Applying it means rebooting the NFS server, which for a shared fileserver has to be coordinated with every job that mounts it - this is a storage maintenance window, not a per-GPU-node drain. If a reboot cannot be scheduled, unexporting NFSv3 (serving v4 only) or tightening export access to trusted clients narrows the reach in the meantime.

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.