diff options
author | Alexey Dobriyan <adobriyan@gmail.com> | 2006-09-29 11:01:06 +0200 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-09-29 18:18:20 +0200 |
commit | d826380b305971ff9825ef005ff039d655542bbb (patch) | |
tree | 8c03475644a23f4d65c9d029e2ca0e63530893cc /fs/9p/v9fs.c | |
parent | [PATCH] cramfs: make cramfs_uncompress_exit() return void (diff) | |
download | linux-d826380b305971ff9825ef005ff039d655542bbb.tar.xz linux-d826380b305971ff9825ef005ff039d655542bbb.zip |
[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/v9fs.c')
-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 22f7ccd58d38..0f628041e3f7 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; } |