fuse: prevent fuse_put_request on invalid pointer
fuse_direct_io() has a loop where requests are allocated in each iteration. if allocation fails, the loop is broken out and follows into an unconditional fuse_put_request() on that invalid pointer. Signed-off-by: Anand V. Avati <avati@gluster.com> Signed-off-by: Miklos Szeredi <mszeredi@suse.cz> Cc: stable@kernel.org
This commit is contained in:
parent
b419148e56
commit
f60311d5f7
1 changed files with 2 additions and 1 deletions
|
@ -1063,7 +1063,8 @@ ssize_t fuse_direct_io(struct file *file, const char __user *buf,
|
|||
break;
|
||||
}
|
||||
}
|
||||
fuse_put_request(fc, req);
|
||||
if (!IS_ERR(req))
|
||||
fuse_put_request(fc, req);
|
||||
if (res > 0)
|
||||
*ppos = pos;
|
||||
|
||||
|
|
Loading…
Reference in a new issue