CVE-2026-53244
Gravedad CVSS v3.1:
ALTA
Tipo:
No Disponible / Otro tipo
Fecha de publicación:
25/06/2026
Última modificación:
07/07/2026
Descripción
*** Pendiente de traducción *** In the Linux kernel, the following vulnerability has been resolved:<br />
<br />
VFS: fix possible failure to unlock in nfsd4_create_file()<br />
<br />
atomic_create() in fs/namei.c drops the reference to the dentry<br />
when it returns an error.<br />
This behaviour was imported into dentry_create() so that it<br />
will drop the reference if an error is returned from atomic_create(),<br />
though not if vfs_create() returns an error (in the case where<br />
->atomic_create is not supported).<br />
<br />
The caller - nfsd4_create_file() - is made aware of this by checking<br />
path->dentry, which will either be a counted reference to a dentry, or<br />
an error pointer.<br />
<br />
However the change to use start_creating()/end_creating() (which landed<br />
shortly before the dentry_create() change landed, though was likely<br />
developed around the same time) means that nfsd4_create_file() *needs* a<br />
valid dentry so that it can unlock the parent.<br />
<br />
The net result is that if NFSD exports a filesystem which uses<br />
->atomic_create, and if a call to ->atomic_create returns an error, then<br />
nfsd4_create_file() will pass an error pointer to end_creating()<br />
and the parent will not be unlocked.<br />
<br />
Fix this by changing dentry_create() to make sure path->dentry is always<br />
a valid dentry, never an error-pointer. The actual error is already<br />
returned a different way.<br />
<br />
Note that if ->atomic_create() returns a different dentry (which may not<br />
be possible in practice) we are guaranteed (because it is only ever<br />
provided by d_spliace_alias()) that it will have the same d_parent and<br />
so it will have the same effect when passed to end_creating().
Impacto
Puntuación base 3.x
7.50
Gravedad 3.x
ALTA
Productos y versiones vulnerables
| CPE | Desde | Hasta |
|---|---|---|
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 7.0 (incluyendo) | 7.0.13 (excluyendo) |
| cpe:2.3:o:linux:linux_kernel:7.1:rc1:*:*:*:*:*:* | ||
| cpe:2.3:o:linux:linux_kernel:7.1:rc2:*:*:*:*:*:* | ||
| cpe:2.3:o:linux:linux_kernel:7.1:rc3:*:*:*:*:*:* | ||
| cpe:2.3:o:linux:linux_kernel:7.1:rc4:*:*:*:*:*:* | ||
| cpe:2.3:o:linux:linux_kernel:7.1:rc5:*:*:*:*:*:* | ||
| cpe:2.3:o:linux:linux_kernel:7.1:rc6:*:*:*:*:*:* |
Para consultar la lista completa de nombres de CPE con productos y versiones, ver esta página



