diff options
author | Miklos Szeredi <mszeredi@suse.cz> | 2015-07-01 16:25:58 +0200 |
---|---|---|
committer | Miklos Szeredi <mszeredi@suse.cz> | 2015-07-01 16:25:58 +0200 |
commit | 825d6d3395e88a616e4c953984d77eeacbad4310 (patch) | |
tree | 1a8644c118994d7d7a743665cb657fd21a450443 /fs/fuse/inode.c | |
parent | 0d8e84b0432beb6d11a1c82deeb9dc1a7bee02c0 (diff) | |
download | linux-825d6d3395e88a616e4c953984d77eeacbad4310.tar.gz linux-825d6d3395e88a616e4c953984d77eeacbad4310.tar.bz2 linux-825d6d3395e88a616e4c953984d77eeacbad4310.zip |
fuse: req use bitops
Finer grained locking will mean there's no single lock to protect
modification of bitfileds in fuse_req.
So move to using bitops. Can use the non-atomic variants for those which
happen while the request definitely has only one reference.
Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
Reviewed-by: Ashish Samant <ashish.samant@oracle.com>
Diffstat (limited to 'fs/fuse/inode.c')
-rw-r--r-- | fs/fuse/inode.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/fs/fuse/inode.c b/fs/fuse/inode.c index cec8abbe2c8c..f7c9b7225ec5 100644 --- a/fs/fuse/inode.c +++ b/fs/fuse/inode.c @@ -362,8 +362,8 @@ static void fuse_send_destroy(struct fuse_conn *fc) if (req && fc->conn_init) { fc->destroy_req = NULL; req->in.h.opcode = FUSE_DESTROY; - req->force = 1; - req->background = 0; + __set_bit(FR_FORCE, &req->flags); + __clear_bit(FR_BACKGROUND, &req->flags); fuse_request_send(fc, req); fuse_put_request(fc, req); } @@ -1060,7 +1060,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; + __set_bit(FR_BACKGROUND, &init_req->flags); if (is_bdev) { fc->destroy_req = fuse_request_alloc(0); |