CVE-2026-53244

Source
https://cve.org/CVERecord?id=CVE-2026-53244
Import Source
https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-53244.json
JSON Data
https://api.osv.dev/v1/vulns/CVE-2026-53244
Downstream
Published
2026-06-25T08:39:38.468Z
Modified
2026-07-09T03:51:29.903053709Z
Severity
  • 7.5 (High) CVSS_V3 - CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H CVSS Calculator
Summary
VFS: fix possible failure to unlock in nfsd4_create_file()
Details

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

VFS: fix possible failure to unlock in nfsd4createfile()

atomiccreate() in fs/namei.c drops the reference to the dentry when it returns an error. This behaviour was imported into dentrycreate() so that it will drop the reference if an error is returned from atomiccreate(), though not if vfscreate() returns an error (in the case where ->atomic_create is not supported).

The caller - nfsd4createfile() - is made aware of this by checking path->dentry, which will either be a counted reference to a dentry, or an error pointer.

However the change to use startcreating()/endcreating() (which landed shortly before the dentrycreate() change landed, though was likely developed around the same time) means that nfsd4create_file() needs a valid dentry so that it can unlock the parent.

The net result is that if NFSD exports a filesystem which uses ->atomiccreate, and if a call to ->atomiccreate returns an error, then nfsd4createfile() will pass an error pointer to end_creating() and the parent will not be unlocked.

Fix this by changing dentry_create() to make sure path->dentry is always a valid dentry, never an error-pointer. The actual error is already returned a different way.

Note that if ->atomiccreate() returns a different dentry (which may not be possible in practice) we are guaranteed (because it is only ever provided by dspliacealias()) that it will have the same dparent and so it will have the same effect when passed to end_creating().

Database specific
{
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/53xxx/CVE-2026-53244.json",
    "cna_assigner": "Linux"
}
References

Affected packages

Git / git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

Affected ranges

Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
64a989dbd144e0622371396461b11335459692d2
Fixed
ee1f40759a50b1800c98c1c369afd5b3e44ad987
Fixed
e824bbd4d224cce4b5fb59cc9dcd3447fe0b7e44

Database specific

source
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-53244.json"

Linux / Kernel

Package

Name
Kernel

Affected ranges

Type
ECOSYSTEM
Events
Introduced
7.0.0
Fixed
7.0.13

Database specific

source
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-53244.json"