Messages in this thread Patch in this message | | | From | OGAWA Hirofumi <> | Subject | [PATCH] procfs: Fix refcnt leak on proc_self_follow_link() error path | Date | Tue, 12 Jan 2010 03:38:36 +0900 |
| |
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> ---
fs/proc/base.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)
diff -puN fs/proc/base.c~namei-procfs-follow_link-fix fs/proc/base.c --- linux-2.6/fs/proc/base.c~namei-procfs-follow_link-fix 2010-01-12 00:15:15.000000000 +0900 +++ linux-2.6-hirofumi/fs/proc/base.c 2010-01-12 00:15:15.000000000 +0900 @@ -2371,8 +2371,10 @@ static void *proc_self_follow_link(struc struct pid_namespace *ns = dentry->d_sb->s_fs_info; pid_t tgid = task_tgid_nr_ns(current, ns); char tmp[PROC_NUMBUF]; - if (!tgid) + if (!tgid) { + path_put(&nd->path); return ERR_PTR(-ENOENT); + } sprintf(tmp, "%d", task_tgid_nr_ns(current, ns)); return ERR_PTR(vfs_follow_link(nd,tmp)); } _ -- OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
| |