CVE-2026-53393

Summary

In the Linux kernel, the following vulnerability has been resolved:

nfsd: reset write verifier on deferred writeback errors

nfsd_vfs_write() and nfsd_commit() both call filemap_check_wb_err() to detect deferred writeback errors, but neither rotates the server's write verifier (nn->writeverf) when this check fails. Every other durable-storage-failure path in these functions calls commit_reset_write_verifier() before returning an error.

The missing rotation means clients holding UNSTABLE write data under the current verifier will COMMIT, receive the unchanged verifier back, and conclude their data is durable — silently dropping data that failed writeback. This violates the UNSTABLE+COMMIT durability contract (RFC 1813 §3.3.7, RFC 8881 §18.32).

Add commit_reset_write_verifier() calls at both filemap_check_wb_err() error sites, matching the pattern used by adjacent error paths in the same functions. The helper already filters -EAGAIN and -ESTALE internally, so the calls are unconditionally safe.

Affected Software

VendorProductVersion RangeStatus
LinuxLinuxf14816f2f928c560d28ba344af689f56efcd6f55 < b8e5894e56cff70fa245628fe16f0ad6367f8090affected
LinuxLinux3145fe0ebb16e1715ad541a301bc6675c8375fcd < bc2baca02ec56da7707a74ed5d340b0a1dff1841affected
LinuxLinux555dbf1a9aac6d3150c8b52fa35f768a692f4eeb < 43b65d2997963e80e8d8d86520bcb1e0751227deaffected
LinuxLinux555dbf1a9aac6d3150c8b52fa35f768a692f4eeb < 666e837b247fcadf2d8d508b9b0e49d720393eb4affected
LinuxLinux555dbf1a9aac6d3150c8b52fa35f768a692f4eeb < 1dd664b39774a9c89b72de8e59bf9ef4b3aaff2eaffected
LinuxLinux555dbf1a9aac6d3150c8b52fa35f768a692f4eeb < 4367afc119c51e17a616f6908772b7e2c2c4013faffected
LinuxLinux555dbf1a9aac6d3150c8b52fa35f768a692f4eeb < b027cca33c97354149fcc0ddeede4525c41093cdaffected
LinuxLinux555dbf1a9aac6d3150c8b52fa35f768a692f4eeb < 2090b05803faab8a9fa62fbff871007862cac1b7affected
LinuxLinux5.10.124 < 5.10.261affected
LinuxLinux5.15.49 < 5.15.212affected
LinuxLinux5.17affected
LinuxLinux0 < 5.17unaffected
LinuxLinux5.10.261 <= 5.10.*unaffected
LinuxLinux5.15.212 <= 5.15.*unaffected
LinuxLinux6.1.178 <= 6.1.*unaffected
LinuxLinux6.6.145 <= 6.6.*unaffected
LinuxLinux6.12.95 <= 6.12.*unaffected
LinuxLinux6.18.38 <= 6.18.*unaffected
LinuxLinux7.1.3 <= 7.1.*unaffected
LinuxLinux7.2 <= *unaffected

Weaknesses

References