mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-29 19:21:31 -04:00
fuse: fix background request if not connected
request_end() expects fc->num_background and fc->active_background to have been incremented, which is not the case in fuse_request_send_nowait() failure path. So instead just call the ->end() callback (which is actually set by all callers). Signed-off-by: Miklos Szeredi <[email protected]> Reviewed-by: Ashish Samant <[email protected]>
This commit is contained in:
parent
0ad0b3255a
commit
42dc6211c5
1 changed files with 4 additions and 1 deletions
|
|
@ -604,13 +604,16 @@ static void fuse_request_send_nowait_locked(struct fuse_conn *fc,
|
|||
|
||||
static void fuse_request_send_nowait(struct fuse_conn *fc, struct fuse_req *req)
|
||||
{
|
||||
BUG_ON(!req->end);
|
||||
spin_lock(&fc->lock);
|
||||
if (fc->connected) {
|
||||
fuse_request_send_nowait_locked(fc, req);
|
||||
spin_unlock(&fc->lock);
|
||||
} else {
|
||||
spin_unlock(&fc->lock);
|
||||
req->out.h.error = -ENOTCONN;
|
||||
request_end(fc, req);
|
||||
req->end(fc, req);
|
||||
fuse_put_request(fc, req);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue