summaryrefslogtreecommitdiffstats
path: root/fs/fuse/fuse_i.h
diff options
context:
space:
mode:
authorKirill Tkhai2018-08-27 17:29:56 +0200
committerMiklos Szeredi2018-09-28 16:43:23 +0200
commit63825b4e1da5a3cba79d835a5925e5daf7db3a77 (patch)
tree55581224599445dbb52801e50273cb3071f700a8 /fs/fuse/fuse_i.h
parentfuse: introduce fc->bg_lock (diff)
downloadkernel-qcow2-linux-63825b4e1da5a3cba79d835a5925e5daf7db3a77.tar.gz
kernel-qcow2-linux-63825b4e1da5a3cba79d835a5925e5daf7db3a77.tar.xz
kernel-qcow2-linux-63825b4e1da5a3cba79d835a5925e5daf7db3a77.zip
fuse: do not take fc->lock in fuse_request_send_background()
Currently, we take fc->lock there only to check for fc->connected. But this flag is changed only on connection abort, which is very rare operation. So allow checking fc->connected under just fc->bg_lock and use this lock (as well as fc->lock) when resetting fc->connected. Signed-off-by: Kirill Tkhai <ktkhai@virtuozzo.com> Signed-off-by: Miklos Szeredi <mszeredi@redhat.com>
Diffstat (limited to 'fs/fuse/fuse_i.h')
-rw-r--r--fs/fuse/fuse_i.h4
1 files changed, 1 insertions, 3 deletions
diff --git a/fs/fuse/fuse_i.h b/fs/fuse/fuse_i.h
index d6d55641a5a6..6e6eab8127a4 100644
--- a/fs/fuse/fuse_i.h
+++ b/fs/fuse/fuse_i.h
@@ -863,9 +863,7 @@ ssize_t fuse_simple_request(struct fuse_conn *fc, struct fuse_args *args);
* Send a request in the background
*/
void fuse_request_send_background(struct fuse_conn *fc, struct fuse_req *req);
-
-void fuse_request_send_background_nocheck(struct fuse_conn *fc,
- struct fuse_req *req);
+bool fuse_request_queue_background(struct fuse_conn *fc, struct fuse_req *req);
/* Abort all requests */
void fuse_abort_conn(struct fuse_conn *fc, bool is_abort);