CVE-2026-53399
In the Linux kernel, the following vulnerability has been resolved:
nfsd: release layout stid on setlease failure
nfs4allocstid() publishes the new stid into cl->cl_stateids via
idralloccyclic() under cl_lock before returning to
nfsd4alloclayoutstateid(). When nfsd4layout_setlease() then
fails, the error path frees the layout stateid directly with
kmemcachefree() without ever calling idr_remove(), leaving the
IDR slot pointing at freed slab memory. Any subsequent IDR walker
(states_show, client teardown) dereferences the dangling pointer.
The correct teardown for an IDR-published stid is nfs4putstid(),
which removes the IDR slot under cllock, dispatches scfree
(nfsd4freelayoutstateid) to release ls->lsfile via
nfsd4closelayout(), and drops the nfs4_file reference in its
tail.
A second issue blocks that switch: nfsd4freelayout_stateid()
unconditionally inspects ls->lsfencework via
delayedworkpending() under ls_lock, but
INITDELAYEDWORK(&ls->lsfencework, ...) currently runs only
after the setlease call. On the setlease-failure path the
destructor would touch an uninitialized delayed_work.
nfsd4alloclayout_stateid()
nfs4allocstid() / idralloccyclic under cl_lock /
nfsd4layoutsetlease() / fails /
nfs4putstid()
nfsd4freelayout_stateid()
delayedworkpending(&ls->lsfencework) / needs INIT /
nfsd4closelayout() / nfsdfileput(ls->ls_file) /
putnfs4file()
Fix by hoisting the lsfenced / lsfencedelay / INITDELAYED_WORK
initialization above the nfsd4layoutsetlease() call, and replace
the manual nfsdfileput + putnfs4file + kmemcachefree cleanup
with a single nfs4putstid(stp).
Package Versions Affected
Automatically patch vulnerabilities without upgrading
CVSS Version



Related Resources
References
https://git.kernel.org/stable/c/2e0a5d6d62600b8c614d1b55e50ef94035d6adf9, https://git.kernel.org/stable/c/30d55c8aabb261bc3f427d6b9aae7ef6206063f9, https://git.kernel.org/stable/c/48a586e382e4db1dbf958d44b63e081df5f8ed04, https://git.kernel.org/stable/c/7bbb7ce74051c8be4b69ff44ce3db370600dae61, https://git.kernel.org/stable/c/83c2b7797742339bb768f83935f7ca33950db138, https://git.kernel.org/stable/c/8dee7c278f1c2b5bb80e17a6281c3812fc8b0cdd, https://git.kernel.org/stable/c/d369e5edfaaf83a448016e2f1da392b2174be801, https://git.kernel.org/stable/c/d788ef40a7517d22c97ab01700e4ae4c611b6f2f, https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/53xxx/CVE-2026-53399.json, https://nvd.nist.gov/vuln/detail/CVE-2026-53399, https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git