Commit a9dc1494 authored by Al Viro's avatar Al Viro
Browse files

expand the only remaining call of path_lookup_conditional()



Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
parent 161aff1d
Loading
Loading
Loading
Loading
+5 −9
Original line number Diff line number Diff line
@@ -858,13 +858,6 @@ static int set_root(struct nameidata *nd)
	return 0;
}

static void path_put_conditional(struct path *path, struct nameidata *nd)
{
	dput(path->dentry);
	if (path->mnt != nd->path.mnt)
		mntput(path->mnt);
}

static inline void path_to_nameidata(const struct path *path,
					struct nameidata *nd)
{
@@ -1312,8 +1305,11 @@ static int follow_managed(struct path *path, struct nameidata *nd)
		ret = 1;
	if (ret > 0 && unlikely(d_flags_negative(flags)))
		ret = -ENOENT;
	if (unlikely(ret < 0))
		path_put_conditional(path, nd);
	if (unlikely(ret < 0)) {
		dput(path->dentry);
		if (path->mnt != nd->path.mnt)
			mntput(path->mnt);
	}
	return ret;
}