cbcvebase.
CVE-2026-22980
published 2026-01-23

CVE-2026-22980: In the Linux kernel, the following vulnerability has been resolved: nfsd: provide locking for v4_end_grace Writing to v4_end_grace can race with server…

PriorityP341high7.8CVSS 3.1
AVLACLPRLUINSUCHIHAH
EPSS
0.13%
3.0th percentile
In the Linux kernel, the following vulnerability has been resolved: nfsd: provide locking for v4_end_grace Writing to v4_end_grace can race with server shutdown and result in memory being accessed after it was freed - reclaim_str_hashtbl in particularly. We cannot hold nfsd_mutex across the nfsd4_end_grace() call as that is held while client_tracking_op->init() is called and that can wait for an upcall to nfsdcltrack which can write to v4_end_grace, resulting in a deadlock. nfsd4_end_grace() is also called by the landromat work queue and this doesn't require locking as server shutdown will stop the work and wait for it before freeing anything that nfsd4_end_grace() might access. However, we must be sure that writing to v4_end_grace doesn't restart the work item after shutdown has already waited for it. For this we add a new flag protected with nn->client_lock. It is set only while it is safe to make client tracking calls, and v4_end_grace only schedules work while the flag is set with the spinlock held. So this patch adds a nfsd_net field "client_tracking_active" which is set as described. Another field "grace_end_forced", is set when v4_end_grace is written. After this is set, and providing client_tracking_active is set, the laundromat is scheduled. This "grace_end_forced" field bypasses other checks for whether the grace period has finished. This resolves a race which can result in use-after-free.

Affected

50 ranges· showing 25
VendorProductVersion rangeFixed in
debianlinux< linux 6.1.162-1 (bookworm)linux 6.1.162-1 (bookworm)
debianlinux-6.1< linux 6.1.162-1 (bookworm)linux 6.1.162-1 (bookworm)
linuxlinux
linuxlinux>= 7f5ef2e900d9462bf9cffaf6bb246ed87a20a6d6 < ca97360860eb02e3ae4ba42c19b439a0fcecbf06ca97360860eb02e3ae4ba42c19b439a0fcecbf06
linuxlinux>= 7f5ef2e900d9462bf9cffaf6bb246ed87a20a6d6 < e8bfa2401d4c51eca6e48e9b33c798828ca9df61e8bfa2401d4c51eca6e48e9b33c798828ca9df61
linuxlinux>= 7f5ef2e900d9462bf9cffaf6bb246ed87a20a6d6 < 34eb22836e0cdba093baac66599d68c4cd245a9d34eb22836e0cdba093baac66599d68c4cd245a9d
linuxlinux>= 7f5ef2e900d9462bf9cffaf6bb246ed87a20a6d6 < 06600719d0f7a723811c45e4d51f5b742f34530906600719d0f7a723811c45e4d51f5b742f345309
linuxlinux>= 7f5ef2e900d9462bf9cffaf6bb246ed87a20a6d6 < ba4811c8b433bfa681729ca42cc62b6034f223b0ba4811c8b433bfa681729ca42cc62b6034f223b0
linuxlinux>= 7f5ef2e900d9462bf9cffaf6bb246ed87a20a6d6 < 53f07d095e7e680c5e4569a55a019f2c0348cdc653f07d095e7e680c5e4569a55a019f2c0348cdc6
linuxlinux>= 7f5ef2e900d9462bf9cffaf6bb246ed87a20a6d6 < 2857bd59feb63fcf40fe4baf55401baea6b4feb42857bd59feb63fcf40fe4baf55401baea6b4feb4
linuxlinux_kernel
linuxlinux_kernel
linuxlinux_kernel
linuxlinux_kernel
linuxlinux_kernel>= 0 < 5.10.249-15.10.249-1
linuxlinux_kernel>= 0 < 6.1.162-16.1.162-1
linuxlinux_kernel>= 0 < 6.12.69-16.12.69-1
linuxlinux_kernel>= 0 < 6.18.8-16.18.8-1
linuxlinux_kernel>= 0 < 5.15.0-173.1835.15.0-173.183
linuxlinux_kernel>= 3.18 < 5.10.2485.10.248
linuxlinux_kernel>= 5.11 < 5.15.1985.15.198
linuxlinux_kernel>= 5.16 < 6.1.1616.1.161
linuxlinux_kernel>= 6.13 < 6.18.66.18.6
linuxlinux_kernel>= 6.2 < 6.6.1216.6.121
linuxlinux_kernel>= 6.7 < 6.12.666.12.66

CVSS provenance

nvdv3.17.8HIGHCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
osv7.8HIGH
vendor_debian7.8HIGH
vendor_redhat7.8HIGH
vendor_ubuntu7.8HIGH
Stop checking back — get the weekly exploitation signal.

Every Monday: what got weaponized or added to CISA KEV in the last seven days — each CVE cross-linked to its PoC, Nuclei template, and detection rule. Free, one email a week, unsubscribe in one click.