diff options
author | Alexey Dobriyan <adobriyan@gmail.com> | 2006-09-29 02:01:06 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-09-29 09:18:20 -0700 |
commit | d826380b305971ff9825ef005ff039d655542bbb (patch) | |
tree | 8c03475644a23f4d65c9d029e2ca0e63530893cc /fs/9p | |
parent | 368bdb3d616fa352971f45b423ae6344715e620b (diff) | |
download | op-kernel-dev-d826380b305971ff9825ef005ff039d655542bbb.zip op-kernel-dev-d826380b305971ff9825ef005ff039d655542bbb.tar.gz |
[PATCH] 9p: fix leak on error path
If register_filesystem() fails mux workqueue must be killed.
Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Cc: Eric Van Hensbergen <ericvh@gmail.com>
Cc: Ron Minnich <rminnich@lanl.gov>
Cc: Latchesar Ionkov <lucho@ionkov.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'fs/9p')
-rw-r--r-- | fs/9p/v9fs.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/fs/9p/v9fs.c b/fs/9p/v9fs.c index 22f7ccd..0f62804 100644 --- a/fs/9p/v9fs.c +++ b/fs/9p/v9fs.c @@ -460,8 +460,10 @@ static int __init init_v9fs(void) ret = v9fs_mux_global_init(); if (!ret) - ret = register_filesystem(&v9fs_fs_type); - + return ret; + ret = register_filesystem(&v9fs_fs_type); + if (!ret) + v9fs_mux_global_exit(); return ret; } |