diff options
author | Latchesar Ionkov <lucho@ionkov.net> | 2007-11-06 08:02:53 -0600 |
---|---|---|
committer | Eric Van Hensbergen <ericvh@gmail.com> | 2007-11-06 08:02:53 -0600 |
commit | dda6b022f3222f09d3fb49f5dfabd31d33e0d10b (patch) | |
tree | de3ea647f9fb82cefea38b6e8d10d828044656dc /fs/9p | |
parent | 2655e2cee2d77459fcb7e10228259e4ee0328697 (diff) | |
download | lwn-dda6b022f3222f09d3fb49f5dfabd31d33e0d10b.tar.gz lwn-dda6b022f3222f09d3fb49f5dfabd31d33e0d10b.zip |
9p: fix memory leak in v9fs_get_sb
This patch fixes a memory leak in v9fs_get_sb.
Signed-off-by: Latchesar Ionkov <lucho@ionkov.net>
Acked-by: Eric Van Hensbergen <ericvh@gmail.com>
Diffstat (limited to 'fs/9p')
-rw-r--r-- | fs/9p/vfs_super.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/fs/9p/vfs_super.c b/fs/9p/vfs_super.c index bb0cef9a6b8a..678c02f1ae23 100644 --- a/fs/9p/vfs_super.c +++ b/fs/9p/vfs_super.c @@ -119,6 +119,7 @@ static int v9fs_get_sb(struct file_system_type *fs_type, int flags, P9_DPRINTK(P9_DEBUG_VFS, " \n"); + st = NULL; v9ses = kzalloc(sizeof(struct v9fs_session_info), GFP_KERNEL); if (!v9ses) return -ENOMEM; @@ -164,10 +165,12 @@ static int v9fs_get_sb(struct file_system_type *fs_type, int flags, root->d_inode->i_ino = v9fs_qid2ino(&st->qid); v9fs_stat2inode(st, root->d_inode, sb); v9fs_fid_add(root, fid); + kfree(st); return simple_set_mnt(mnt, sb); error: + kfree(st); if (fid) p9_client_clunk(fid); |