From: Al Viro fix for too early mntput() in open_namei() - we pin path.mnt down for the duration of __do_follow_link(). Otherwise we could get the fs where our symlink lived unmounted while we were in __do_follow_link(). That would end up with dentry of symlink staying pinned down through the fs shutdown. Signed-off-by: Al Viro Signed-off-by: Andrew Morton --- fs/namei.c | 2 ++ 1 files changed, 2 insertions(+) diff -puN fs/namei.c~namei-fixes-05-19 fs/namei.c --- 25/fs/namei.c~namei-fixes-05-19 Fri May 20 15:42:06 2005 +++ 25-akpm/fs/namei.c Fri May 20 15:42:06 2005 @@ -1524,8 +1524,10 @@ do_link: error = security_inode_follow_link(path.dentry, nd); if (error) goto exit_dput; + mntget(path.mnt); error = __do_follow_link(path.dentry, nd); dput(path.dentry); + mntput(path.mnt); path.mnt = nd->mnt; if (error) return error; _