mirror of https://gitee.com/openkylin/linux.git
fuse: add missing fuse_request_free
The error handling code for the second call to fuse_request_alloc should include freeing the result of the first one. This bug was found by the Coccinelle project: http://www.emn.fr/x-info/coccinelle/ Signed-off-by: Julia Lawall <julia@diku.dk> Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
This commit is contained in:
parent
769415c611
commit
17e18ab6ff
|
@ -865,7 +865,7 @@ static int fuse_fill_super(struct super_block *sb, void *data, int silent)
|
|||
if (is_bdev) {
|
||||
fc->destroy_req = fuse_request_alloc();
|
||||
if (!fc->destroy_req)
|
||||
goto err_put_root;
|
||||
goto err_free_init_req;
|
||||
}
|
||||
|
||||
mutex_lock(&fuse_mutex);
|
||||
|
@ -895,6 +895,7 @@ static int fuse_fill_super(struct super_block *sb, void *data, int silent)
|
|||
|
||||
err_unlock:
|
||||
mutex_unlock(&fuse_mutex);
|
||||
err_free_init_req:
|
||||
fuse_request_free(init_req);
|
||||
err_put_root:
|
||||
dput(root_dentry);
|
||||
|
|
Loading…
Reference in New Issue