fuse: make request allocations for background processing explicit
There are two types of processing requests in FUSE: synchronous (via fuse_request_send()) and asynchronous (via adding to fc->bg_queue). Fortunately, the type of processing is always known in advance, at the time of request allocation. This preparatory patch utilizes this fact making fuse_get_req() aware about the type. Next patches will use it. Signed-off-by: Maxim Patlasov <mpatlasov@parallels.com> Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
This commit is contained in:

committed by
Miklos Szeredi

parent
4c82456eeb
commit
8b41e6715e
@@ -346,6 +346,7 @@ static void fuse_send_destroy(struct fuse_conn *fc)
|
||||
fc->destroy_req = NULL;
|
||||
req->in.h.opcode = FUSE_DESTROY;
|
||||
req->force = 1;
|
||||
req->background = 0;
|
||||
fuse_request_send(fc, req);
|
||||
fuse_put_request(fc, req);
|
||||
}
|
||||
@@ -1043,6 +1044,7 @@ static int fuse_fill_super(struct super_block *sb, void *data, int silent)
|
||||
init_req = fuse_request_alloc(0);
|
||||
if (!init_req)
|
||||
goto err_put_root;
|
||||
init_req->background = 1;
|
||||
|
||||
if (is_bdev) {
|
||||
fc->destroy_req = fuse_request_alloc(0);
|
||||
|
Reference in New Issue
Block a user