Skip to content
CVE PROGRAM SOURCE RECORD9.8 Critical

CVE-2026-90037

NFSD: Prevent client use-after-free during close_lru reaping

Description

In the Linux kernel, the following vulnerability has been resolved: NFSD: Prevent client use-after-free during close_lru reaping An nfs4_openowner left on nn->close_lru after its final CLOSE keeps its last closed stateid in oo_last_closed_stid, holding only a raw pointer to its nfs4_client. The laundromat reaps timed-out entries, drops nn->client_lock, and calls nfs4_put_stid(), which dereferences the client through cl_lock. Nothing pins the client across that window, so a concurrent force_expire_client() can free it and nfs4_put_stid() reads freed memory. __destroy_client() hits the same race, walking clp->cl_openowners without cl_lock. Pin the client with cl_rpc_users before dropping client_lock, and skip clients already expiring. __destroy_client() then cleans up its own close_lru entries through release_last_closed_stateid(), so teardown no longer races the laundromat.

Affected products

Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.

Linux Linux

Default version status: unaffected

  • 217526e7ecc9f6f243e976772e81eab7ab986a4c to < adc34b5df5c5d87043cb500b0867fc1c4ad0117eaffected
  • 217526e7ecc9f6f243e976772e81eab7ab986a4c to < 0763482227822f7343557f086afc382086d56c4caffected
  • 217526e7ecc9f6f243e976772e81eab7ab986a4c to < 83dd59ac1c3455c2c7d8ddb582d980a13199b9b3affected
  • 217526e7ecc9f6f243e976772e81eab7ab986a4c to < e57a9ed34ea8c17e831de59b8f1a6b2d80d347a1affected
  • 217526e7ecc9f6f243e976772e81eab7ab986a4c to < 2330b788d732f43668b965b3105b37ceb276dfeaaffected

Linux Linux

Default version status: affected

  • 3.17affected
  • 0 to < 3.17unaffected
  • 6.6.160 to ≤ 6.6.*unaffected
  • 6.12.111 to ≤ 6.12.*unaffected
  • 6.18.51 to ≤ 6.18.*unaffected
  • 7.2.5 to ≤ 7.2.*unaffected
  • 7.3 to ≤ *unaffected

References