summaryrefslogtreecommitdiffstats
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
parent1972580bb4edea3ed6fe273b2ca72f44f10f8c86 (diff)
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>
-rw-r--r--fs/namei.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/fs/namei.c b/fs/namei.c
index 61995fba4e2..37385201271 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);