summary refs log tree commit diff
path: root/fs/namei.c
diff options
context:
space:
mode:
authorDavid Howells <dhowells@redhat.com>2011-01-14 18:46:46 +0000
committerAl Viro <viro@zeniv.linux.org.uk>2011-01-15 20:07:46 -0500
commit87556ef19926e97464e0163a7840140527ae6615 (patch)
tree04f75b49a88523e4700a2cbf73c04c75697c419a /fs/namei.c
parent1972580bb4edea3ed6fe273b2ca72f44f10f8c86 (diff)
downloadlinux-87556ef19926e97464e0163a7840140527ae6615.tar.gz
Remove a further kludge from __do_follow_link()
Remove a further kludge from __do_follow_link() as it's no longer required with
the automount code.

This reverts the non-helper-function parts of
051d381259eb57d6074d02a6ba6e90e744f1a29f, which breaks union mounts.

Reported-by: vaurora@redhat.com
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/namei.c')
-rw-r--r--fs/namei.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/fs/namei.c b/fs/namei.c
index 61995fba4e21..373852012713 100644
--- a/fs/namei.c
+++ b/fs/namei.c
@@ -800,12 +800,8 @@ __do_follow_link(const struct path *link, struct nameidata *nd, void **p)
 	touch_atime(link->mnt, dentry);
 	nd_set_link(nd, NULL);
 
-	if (link->mnt != nd->path.mnt) {
-		path_to_nameidata(link, nd);
-		nd->inode = nd->path.dentry->d_inode;
-		dget(dentry);
-	}
-	mntget(link->mnt);
+	if (link->mnt == nd->path.mnt)
+		mntget(link->mnt);
 
 	nd->last_type = LAST_BIND;
 	*p = dentry->d_inode->i_op->follow_link(dentry, nd);