CVE-2026-22980

EUVD-2026-4321
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.
ProviderTypeBase ScoreAtk. VectorAtk. ComplexityPriv. RequiredVector
NISTPrimary
7.8 HIGH
LOCAL
LOW
LOW
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Base Score
CVSS 3.x
EPSS Score
Percentile: 2%
Affected Products (NVD)
VendorProductVersion
linuxlinux_kernel
3.18 ≤
𝑥
< 5.10.248
linuxlinux_kernel
5.11 ≤
𝑥
< 5.15.198
linuxlinux_kernel
5.16 ≤
𝑥
< 6.1.161
linuxlinux_kernel
6.2 ≤
𝑥
< 6.6.121
linuxlinux_kernel
6.7 ≤
𝑥
< 6.12.66
linuxlinux_kernel
6.13 ≤
𝑥
< 6.18.6
linuxlinux_kernel
6.19:rc1
linuxlinux_kernel
6.19:rc2
linuxlinux_kernel
6.19:rc3
linuxlinux_kernel
6.19:rc4
𝑥
= Vulnerable software versions
Debian logo
Debian Releases
Debian Product
Codename
linux
bookworm
6.1.170-3
fixed
bookworm (security)
6.1.176-1
fixed
bullseye
vulnerable
bullseye (security)
5.10.259-1
fixed
forky
7.0.13-1
fixed
sid
7.1.3-1
fixed
trixie
6.12.86-1
fixed
trixie (security)
6.12.95-1
fixed
linux-6.1
bullseye (security)
6.1.176-1~deb11u1
fixed
Amazon Linux logo
Amazon Linux Releases
Amazon Package
Release
bpftool
Amazon Linux 2023
1:6.1.161-183.298.amzn2023
fixed
bpftool-debuginfo
Amazon Linux 2023
1:6.1.161-183.298.amzn2023
fixed
bpftool6.12
Amazon Linux 2023
1:6.12.66-88.122.amzn2023
fixed
bpftool6.12-debuginfo
Amazon Linux 2023
1:6.12.66-88.122.amzn2023
fixed
kernel
Amazon Linux 2023
1:6.1.161-183.298.amzn2023
fixed
kernel-debuginfo
Amazon Linux 2023
1:6.1.161-183.298.amzn2023
fixed
kernel-debuginfo-common-aarch64
Amazon Linux 2023
1:6.1.161-183.298.amzn2023
fixed
kernel-debuginfo-common-x86_64
Amazon Linux 2023
1:6.1.161-183.298.amzn2023
fixed
kernel-devel
Amazon Linux 2023
1:6.1.161-183.298.amzn2023
fixed
kernel-headers
Amazon Linux 2023
1:6.1.161-183.298.amzn2023
fixed
kernel-libbpf
Amazon Linux 2023
1:6.1.161-183.298.amzn2023
fixed
kernel-libbpf-debuginfo
Amazon Linux 2023
1:6.1.161-183.298.amzn2023
fixed
kernel-libbpf-devel
Amazon Linux 2023
1:6.1.161-183.298.amzn2023
fixed
kernel-libbpf-static
Amazon Linux 2023
1:6.1.161-183.298.amzn2023
fixed
kernel-livepatch-6.1.161-183.298
Amazon Linux 2023
1:1.0-0.amzn2023
fixed
kernel-livepatch-6.12.66-88.122
Amazon Linux 2023
1:1.0-0.amzn2023
fixed
kernel-modules-extra
Amazon Linux 2023
1:6.1.161-183.298.amzn2023
fixed
kernel-modules-extra-common
Amazon Linux 2023
1:6.1.161-183.298.amzn2023
fixed
kernel-tools
Amazon Linux 2023
1:6.1.161-183.298.amzn2023
fixed
kernel-tools-debuginfo
Amazon Linux 2023
1:6.1.161-183.298.amzn2023
fixed
kernel-tools-devel
Amazon Linux 2023
1:6.1.161-183.298.amzn2023
fixed
kernel6.12
Amazon Linux 2023
1:6.12.66-88.122.amzn2023
fixed
kernel6.12-debuginfo
Amazon Linux 2023
1:6.12.66-88.122.amzn2023
fixed
kernel6.12-debuginfo-common-aarch64
Amazon Linux 2023
1:6.12.66-88.122.amzn2023
fixed
kernel6.12-debuginfo-common-x86_64
Amazon Linux 2023
1:6.12.66-88.122.amzn2023
fixed
kernel6.12-devel
Amazon Linux 2023
1:6.12.66-88.122.amzn2023
fixed
kernel6.12-headers
Amazon Linux 2023
1:6.12.66-88.122.amzn2023
fixed
kernel6.12-libbpf
Amazon Linux 2023
1:6.12.66-88.122.amzn2023
fixed
kernel6.12-libbpf-debuginfo
Amazon Linux 2023
1:6.12.66-88.122.amzn2023
fixed
kernel6.12-libbpf-devel
Amazon Linux 2023
1:6.12.66-88.122.amzn2023
fixed
kernel6.12-libbpf-static
Amazon Linux 2023
1:6.12.66-88.122.amzn2023
fixed
kernel6.12-modules-extra
Amazon Linux 2023
1:6.12.66-88.122.amzn2023
fixed
kernel6.12-modules-extra-common
Amazon Linux 2023
1:6.12.66-88.122.amzn2023
fixed
kernel6.12-tools
Amazon Linux 2023
1:6.12.66-88.122.amzn2023
fixed
kernel6.12-tools-debuginfo
Amazon Linux 2023
1:6.12.66-88.122.amzn2023
fixed
kernel6.12-tools-devel
Amazon Linux 2023
1:6.12.66-88.122.amzn2023
fixed
perf
Amazon Linux 2023
1:6.1.161-183.298.amzn2023
fixed
perf-debuginfo
Amazon Linux 2023
1:6.1.161-183.298.amzn2023
fixed
perf6.12
Amazon Linux 2023
1:6.12.66-88.122.amzn2023
fixed
perf6.12-debuginfo
Amazon Linux 2023
1:6.12.66-88.122.amzn2023
fixed
python3-perf
Amazon Linux 2023
1:6.1.161-183.298.amzn2023
fixed
python3-perf-debuginfo
Amazon Linux 2023
1:6.1.161-183.298.amzn2023
fixed
python3-perf6.12
Amazon Linux 2023
1:6.12.66-88.122.amzn2023
fixed
python3-perf6.12-debuginfo
Amazon Linux 2023
1:6.12.66-88.122.amzn2023
fixed
Azure Linux logo
Azure Linux Releases
Azure Package
Release
kernel
Azure Linux 3.0
0:6.6.121.1-1.azl3
fixed
CBL-Mariner 2.0
0:5.15.200.1-1.cm2
fixed