PT-2026-52339 · Linux · Linux
Publicado
2026-06-25
·
Atualizado
2026-06-25
·
CVE-2026-53244
Nenhuma
Não há classificações de severidade ou métricas disponíveis. Quando houver, atualizaremos as informações correspondentes na página.
In the Linux kernel, the following vulnerability has been resolved:
VFS: fix possible failure to unlock in nfsd4 create file()
atomic create() in fs/namei.c drops the reference to the dentry
when it returns an error.
This behaviour was imported into dentry create() so that it
will drop the reference if an error is returned from atomic create(),
though not if vfs create() returns an error (in the case where
->atomic create is not supported).
The caller - nfsd4 create file() - 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 start creating()/end creating() (which landed
shortly before the dentry create() change landed, though was likely
developed around the same time) means that nfsd4 create file() needs a
valid dentry so that it can unlock the parent.
The net result is that if NFSD exports a filesystem which uses
->atomic create, and if a call to ->atomic create returns an error, then
nfsd4 create file() 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 ->atomic create() returns a different dentry (which may not
be possible in practice) we are guaranteed (because it is only ever
provided by d spliace alias()) that it will have the same d parent and
so it will have the same effect when passed to end creating().
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Identificadores relacionados
Produtos afetados
Linux