[PATCH] v9fs: Twalk memory leak

v9fs leaks memory if the file server responds with Rerror to a Twalk
message.  The patch fixes the leak.

Signed-off-by: Latchesar Ionkov <lucho@ionkov.net>
Cc: Eric Van Hensbergen <ericvh@hera.kernel.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
Latchesar Ionkov 2006-05-15 09:44:18 -07:00 committed by Linus Torvalds
parent 3dc7b82ea7
commit 343f1fe6f2
1 changed files with 9 additions and 12 deletions

View File

@ -98,23 +98,20 @@ v9fs_t_attach(struct v9fs_session_info *v9ses, char *uname, char *aname,
static void v9fs_t_clunk_cb(void *a, struct v9fs_fcall *tc, static void v9fs_t_clunk_cb(void *a, struct v9fs_fcall *tc,
struct v9fs_fcall *rc, int err) struct v9fs_fcall *rc, int err)
{ {
int fid; int fid, id;
struct v9fs_session_info *v9ses; struct v9fs_session_info *v9ses;
if (err) id = 0;
return;
fid = tc->params.tclunk.fid; fid = tc->params.tclunk.fid;
if (rc)
id = rc->id;
kfree(tc); kfree(tc);
if (!rc)
return;
v9ses = a;
if (rc->id == RCLUNK)
v9fs_put_idpool(fid, &v9ses->fidpool);
kfree(rc); kfree(rc);
if (id == RCLUNK) {
v9ses = a;
v9fs_put_idpool(fid, &v9ses->fidpool);
}
} }
/** /**