[PATCH] 9p: fix memory leak in v9fs_get_sb

Previous thread: [PATCH] IA64/perfmon: kill dead code, clean irq handling by Jeff Garzik on Tuesday, October 23, 2007 - 4:09 pm. (5 messages)

Next thread: [SPARC64]: SG build fix. by David Miller on Tuesday, October 23, 2007 - 4:48 pm. (2 messages)
From: Latchesar Ionkov
Date: Tuesday, October 23, 2007 - 4:46 pm

This patch fixes a memory leak in v9fs_get_sb.

Signed-off-by: Latchesar Ionkov <lucho@ionkov.net>

---
commit 77250c234636881976ebd567f9edc7c36711bd4a
tree 35d683472542706a3b78eb51bc29b92f690c314a
parent 01e7ae8c13bb06a2ce622ebace33bb7e28ef596c
author Latchesar Ionkov <lucho@ionkov.net> 1193169149 -0600
committer Latchesar Ionkov <lucho@ionkov.net> 1193169149 -0600

 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 bb0cef9..678c02f 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);
 
-

Previous thread: [PATCH] IA64/perfmon: kill dead code, clean irq handling by Jeff Garzik on Tuesday, October 23, 2007 - 4:09 pm. (5 messages)

Next thread: [SPARC64]: SG build fix. by David Miller on Tuesday, October 23, 2007 - 4:48 pm. (2 messages)