diff options
author | OGAWA Hirofumi <hirofumi@mail.parknet.co.jp> | 2010-01-11 19:36:57 +0100 |
---|---|---|
committer | Steven Whitehouse <swhiteho@redhat.com> | 2010-01-12 10:30:15 +0100 |
commit | 0f585f14d4e34ab701283e9237ac7695cd7c9e31 (patch) | |
tree | 7ded56c8f9ddc84d4930a5a9f0f52c9b1464f6e1 /fs | |
parent | Revert "x86, apic: Use logical flat on intel with <= 8 logical cpus" (diff) | |
download | linux-0f585f14d4e34ab701283e9237ac7695cd7c9e31.tar.xz linux-0f585f14d4e34ab701283e9237ac7695cd7c9e31.zip |
GFS2: Fix refcnt leak on gfs2_follow_link() error path
If ->follow_link handler return the error, it should decrement
nd->path refcnt.
This patch fix it.
Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/gfs2/ops_inode.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/gfs2/ops_inode.c b/fs/gfs2/ops_inode.c index 78f73ca1ef3e..84350e1be66d 100644 --- a/fs/gfs2/ops_inode.c +++ b/fs/gfs2/ops_inode.c @@ -1088,7 +1088,8 @@ static void *gfs2_follow_link(struct dentry *dentry, struct nameidata *nd) error = vfs_follow_link(nd, buf); if (buf != array) kfree(buf); - } + } else + path_put(&nd->path); return ERR_PTR(error); } |