Skip to main content
VulnerabilityPublished Updated

CVE-2026-89686: Linux kernel · nfsd: fix BUG_ON in nfsd4_alloc_layout_stateid on racing delegation revoke

Affects Linux kernelSource CVE Database V5

0

Not known to be exploited · CVSS 9.8 Critical · fixed in d12af460df27876661707efab3a8532146cb961f : patch Linux kernel as a priority.

Data as of 26 Oct 2026, 17:30 UTC

CVSS 3.1 base score
9.8Critical
How severe the flaw is on the 0–10 CVSS scale.
EPSS
0.6% chance of exploitation in 30 days – higher than 51% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
CISA SSVC
Exploitation
No evidence of active exploitation and no public proof of concept
Automatable
Attackers can reliably automate steps 1–4 of the kill chain
Technical impact
Total control over the software or total information disclosure

CISA SSVC assessment, 2026-10-16.

Patch
Available – fixed in d12af460df27876661707efab3a8532146cb961f, ca94ba36172046be6a694a7986f6931e47ed4d51, c517f27498757e616d2a8fe6d16caad1fee422e6 +2
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Exploitation evidence

  1. Disclosed: evidence found.

    CVE published 11 Sep 2026

  2. Detectable: no evidence on record.

    No public nuclei template indexed

  3. Weaponised: no evidence on record.

    No public exploit code indexed in Metasploit or Exploit-DB

  4. Exploited in the wild: no evidence on record.

    Not in CISA KEV and no source reports exploitation

  5. Observed by OffSeq Mirage: no evidence on record.

    No attack traffic recorded by OffSeq Mirage sensors

A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 26 Oct 2026.

What to do

Upgrade to a fixed release listed under Affected software.

Affected software

ProductAffectedFixed in
LinuxLinuxAffected
  • ≥ c5c707f96fc9a6e5a57ca5baac892673270abe3d, < d12af460df27876661707efab3a8532146cb961f
Fixed in
  • d12af460df27876661707efab3a8532146cb961f
LinuxLinuxAffected
  • ≥ c5c707f96fc9a6e5a57ca5baac892673270abe3d, < ca94ba36172046be6a694a7986f6931e47ed4d51
Fixed in
  • ca94ba36172046be6a694a7986f6931e47ed4d51
LinuxLinuxAffected
  • ≥ c5c707f96fc9a6e5a57ca5baac892673270abe3d, < c517f27498757e616d2a8fe6d16caad1fee422e6
Fixed in
  • c517f27498757e616d2a8fe6d16caad1fee422e6
LinuxLinuxAffected
  • ≥ c5c707f96fc9a6e5a57ca5baac892673270abe3d, < 607a56fea772c1f4f4989d8e255dd4f7192d9604
Fixed in
  • 607a56fea772c1f4f4989d8e255dd4f7192d9604
LinuxLinuxAffected
  • ≥ c5c707f96fc9a6e5a57ca5baac892673270abe3d, < 97bda8b4284d90897a1f1922e5082ff9e35d7c7e
Fixed in
  • 97bda8b4284d90897a1f1922e5082ff9e35d7c7e
LinuxLinuxAffected
  • =4.0
Fixed in–

Description

In the Linux kernel, the following vulnerability has been resolved: nfsd: fix BUG_ON in nfsd4_alloc_layout_stateid on racing delegation revoke nfsd4_alloc_layout_stateid reads fp->fi_deleg_file without holding fi_lock when the parent stateid is a delegation. A concurrent delegation revoke via the laundromat can clear fi_deleg_file under fi_lock, causing nfsd_file_get() to return NULL and triggering the BUG_ON. This race is client-reachable: two NFS clients can trigger it by having one hold a delegation while another opens the same file to force a recall. When the first client doesn't respond to the recall, the laundromat revokes it. A concurrent LAYOUTGET from any client using the delegation stateid hits the race window. Fix this by taking fi_lock around the fi_deleg_file read in the SC_TYPE_DELEG path, matching the locking discipline of the find_any_file() arm, and replacing the BUG_ON with a graceful error return that cleans up the partially-initialized layout stateid.

References

Community reviews

Loading reviews…