Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1c755af4 authored by Al Viro's avatar Al Viro
Browse files

switch lookup_mnt()



Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
parent 79ed0226
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -702,7 +702,7 @@ static int __follow_mount(struct path *path)
{
	int res = 0;
	while (d_mountpoint(path->dentry)) {
		struct vfsmount *mounted = lookup_mnt(path->mnt, path->dentry);
		struct vfsmount *mounted = lookup_mnt(path);
		if (!mounted)
			break;
		dput(path->dentry);
@@ -718,7 +718,7 @@ static int __follow_mount(struct path *path)
static void follow_mount(struct path *path)
{
	while (d_mountpoint(path->dentry)) {
		struct vfsmount *mounted = lookup_mnt(path->mnt, path->dentry);
		struct vfsmount *mounted = lookup_mnt(path);
		if (!mounted)
			break;
		dput(path->dentry);
@@ -735,7 +735,7 @@ int follow_down(struct path *path)
{
	struct vfsmount *mounted;

	mounted = lookup_mnt(path->mnt, path->dentry);
	mounted = lookup_mnt(path);
	if (mounted) {
		dput(path->dentry);
		mntput(path->mnt);
+2 −2
Original line number Diff line number Diff line
@@ -442,11 +442,11 @@ struct vfsmount *__lookup_mnt(struct vfsmount *mnt, struct dentry *dentry,
 * lookup_mnt increments the ref count before returning
 * the vfsmount struct.
 */
struct vfsmount *lookup_mnt(struct vfsmount *mnt, struct dentry *dentry)
struct vfsmount *lookup_mnt(struct path *path)
{
	struct vfsmount *child_mnt;
	spin_lock(&vfsmount_lock);
	if ((child_mnt = __lookup_mnt(mnt, dentry, 1)))
	if ((child_mnt = __lookup_mnt(path->mnt, path->dentry, 1)))
		mntget(child_mnt);
	spin_unlock(&vfsmount_lock);
	return child_mnt;
+1 −1
Original line number Diff line number Diff line
@@ -370,7 +370,7 @@ static inline int d_mountpoint(struct dentry *dentry)
	return dentry->d_mounted;
}

extern struct vfsmount *lookup_mnt(struct vfsmount *, struct dentry *);
extern struct vfsmount *lookup_mnt(struct path *);
extern struct dentry *lookup_create(struct nameidata *nd, int is_dir);

extern int sysctl_vfs_cache_pressure;