From: David Howells Date: Fri, 14 Jan 2011 18:46:46 +0000 (+0000) Subject: Remove a further kludge from __do_follow_link() X-Git-Tag: v2.6.38-rc1~35^2~5 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=87556ef19926e97464e0163a7840140527ae6615;p=platform%2Fkernel%2Flinux-stable.git 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 Signed-off-by: Al Viro --- diff --git a/fs/namei.c b/fs/namei.c index 61995fb..3738520 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);