summaryrefslogtreecommitdiff
path: root/fs/fuse/dev.c
diff options
context:
space:
mode:
authorMiklos Szeredi <mszeredi@suse.cz>2015-07-01 16:25:56 +0200
committerMiklos Szeredi <mszeredi@suse.cz>2015-07-01 16:25:56 +0200
commit73e0e738441b26a2dfc1ccdf1462cd1dc13c8cea (patch)
tree1fd802548fc413dd88f09e8d351c858878e7ec0d /fs/fuse/dev.c
parent42dc6211c54aa93e6a483469d07bd06f91713af7 (diff)
downloadlwn-73e0e738441b26a2dfc1ccdf1462cd1dc13c8cea.tar.gz
lwn-73e0e738441b26a2dfc1ccdf1462cd1dc13c8cea.zip
fuse: reset waiting
Reset req->waiting in fuse_put_request(). This is needed for correct accounting in fc->num_waiting for reserved requests. Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
Diffstat (limited to 'fs/fuse/dev.c')
-rw-r--r--fs/fuse/dev.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/fs/fuse/dev.c b/fs/fuse/dev.c
index 6aa4803510e7..24f1d77b87a4 100644
--- a/fs/fuse/dev.c
+++ b/fs/fuse/dev.c
@@ -287,8 +287,10 @@ void fuse_put_request(struct fuse_conn *fc, struct fuse_req *req)
spin_unlock(&fc->lock);
}
- if (req->waiting)
+ if (req->waiting) {
atomic_dec(&fc->num_waiting);
+ req->waiting = 0;
+ }
if (req->stolen_file)
put_reserved_req(fc, req);