CVE-2025-37871: nfsd: decrease sc_count directly if fail to queue dl_recall
In the Linux kernel, the following vulnerability has been resolved:
nfsd: decrease sc_count directly if fail to queue dl_recall
A deadlock warning occurred when invoking nfs4_put_stid following a failed
dl_recall queue operation:
T1 T2
nfs4_laundromat
nfs4_get_client_reaplist
nfs4_anylock_blockers
__break_lease
spin_lock // ctx->flc_lock
spin_lock // clp->cl_lock
nfs4_lockowner_has_blockers
locks_owner_has_blockers
spin_lock // flctx->flc_lock
nfsd_break_deleg_cb
nfsd_break_one_deleg
nfs4_put_stid
refcount_dec_and_lock
spin_lock // clp->cl_lock
When a file is opened, an nfs4_delegation is allocated with sc_count
initialized to 1, and the file_lease holds a reference to the delegation.
The file_lease is then associated with the file through kernel_setlease.
The disassociation is performed in nfsd4_delegreturn via the following
call chain:
nfsd4_delegreturn --> destroy_delegation --> destroy_unhashed_deleg -->
nfs4_unlock_deleg_lease --> kernel_setlease --> generic_delete_lease
The corresponding sc_count reference will be released after this
disassociation.
Since nfsd_break_one_deleg executes while holding the flc_lock, the
disassociation process becomes blocked when attempting to acquire flc_lock
in generic_delete_lease. This means:
1) sc_count in nfsd_break_one_deleg will not be decremented to 0;
2) The nfs4_put_stid called by nfsd_break_one_deleg will not attempt to
acquire cl_lock;
3) Consequently, no deadlock condition is created.
Given that sc_count in nfsd_break_one_deleg remains non-zero, we can
safely perform refcount_dec on sc_count directly. This approach
effectively avoids triggering deadlock warnings.
Security readout for executives and security teams
Plain-English summary
A Linux NFS server flaw can cause a lock-handling failure when the kernel cannot queue a delegation recall. The documented impact is loss of availability rather than data theft or modification. Network reachability, low attack complexity, and no required privileges produce a CVSS 7.5 rating, but the supplied evidence does not demonstrate active exploitation.
Executive priority
Treat as a high-priority availability issue for exposed or operationally critical NFS servers. Patch through supported distribution channels after focused testing. Lower priority for systems without NFS server functionality. Escalate immediately if kernel lock warnings, NFS stalls, or unexplained service disruption are observed.
Technical view
The flaw affects Linux nfsd delegation handling after a dl_recall queue failure. Calling nfs4_put_stid while holding flc_lock can create problematic lock ordering involving cl_lock and trigger deadlock warnings. The stable fix directly decrements the delegation sc_count reference, avoiding the lock-taking path while the count remains nonzero.
Likely exposure
Systems operating Linux as an NFS server are the relevant population, particularly where NFS is reachable from untrusted or broadly accessible networks. Hosts that do not provide NFS service are unlikely to expose this path. The bundle does not provide a reliable complete vulnerable-version range, so distribution-specific status must be confirmed.
Exploitation context
The CVSS vector describes network access, low complexity, no privileges, no user interaction, and availability impact. However, KEV is false, and the supplied sources contain no evidence of exploitation in the wild or a public weaponized exploit. Practical reproducibility and attacker control over the queue-failure condition remain unconfirmed.
Researcher notes
The correction relies on the delegation reference count remaining nonzero while lease disassociation is blocked on flc_lock. Direct refcount_dec avoids the refcount_dec_and_lock path and therefore avoids acquiring cl_lock. The source describes a narrow concurrency and reference-management correction; it does not document confidentiality, integrity, code-execution, or privilege-escalation impact.
Mitigation direction
Apply a vendor-supported kernel update containing the referenced stable fix.
Check Linux distribution advisories for affected and corrected package versions.
Restrict NFS exposure to required clients and trusted network segments.
Prioritize internet-accessible or business-critical NFS servers.
Validation and detection
Inventory Linux hosts providing NFS server services and record their kernel packages.
Map installed kernels against distribution advisories and referenced stable commits.
Review kernel logs for nfsd deadlock, lockdep, delegation, or recall warnings.
After updating, regression-test NFS delegation, recall, and file-access workloads.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cve · low confidence lookup
CVE-2025-37871 mapping review
Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
1CVSS vectors
3Timeline events
1ADP providers
10Source links
CVSS vector scores
1 official score
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.