X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=fs%2Fnamei.c;h=c53d3a9547f9295408fa3cfe0d5abfb72023e29e;hb=c3a2fe03148f13b119c7bf0427a0526bdb288a92;hp=e029a4cbff7db7b23af15628ca4d8c2cac5da491;hpb=2ecd1aba597726c9053ba1a112e3d8fdc5ca08ff;p=mirror_ubuntu-bionic-kernel.git diff --git a/fs/namei.c b/fs/namei.c index e029a4cbff7d..c53d3a9547f9 100644 --- a/fs/namei.c +++ b/fs/namei.c @@ -513,8 +513,7 @@ static int unlazy_walk(struct nameidata *nd, struct dentry *dentry) if (!lockref_get_not_dead(&parent->d_lockref)) { nd->path.dentry = NULL; - rcu_read_unlock(); - return -ECHILD; + goto out; } /* @@ -2435,6 +2434,7 @@ static int may_delete(struct inode *dir, struct dentry *victim, bool isdir) */ static inline int may_create(struct inode *dir, struct dentry *child) { + audit_inode_child(dir, child, AUDIT_TYPE_CHILD_CREATE); if (child->d_inode) return -EEXIST; if (IS_DEADDIR(dir))