From: Al Viro Date: Tue, 1 May 2018 00:09:10 +0000 (-0400) Subject: sysv_lookup: use d_splice_alias() X-Git-Tag: v4.19~853^2~22 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=5bf3544970eb23a6470fe97c7cc37246509277e2;p=platform%2Fkernel%2Flinux-rpi3.git sysv_lookup: use d_splice_alias() code is simpler that way Cc: Christoph Hellwig Signed-off-by: Al Viro --- diff --git a/fs/sysv/namei.c b/fs/sysv/namei.c index 250b075..4d5d204 100644 --- a/fs/sysv/namei.c +++ b/fs/sysv/namei.c @@ -51,14 +51,9 @@ static struct dentry *sysv_lookup(struct inode * dir, struct dentry * dentry, un if (dentry->d_name.len > SYSV_NAMELEN) return ERR_PTR(-ENAMETOOLONG); ino = sysv_inode_by_name(dentry); - - if (ino) { + if (ino) inode = sysv_iget(dir->i_sb, ino); - if (IS_ERR(inode)) - return ERR_CAST(inode); - } - d_add(dentry, inode); - return NULL; + return d_splice_alias(inode, dentry); } static int sysv_mknod(struct inode * dir, struct dentry * dentry, umode_t mode, dev_t rdev)