diff options
-rw-r--r-- | fs/fuse/dev.c | 17 | ||||
-rw-r--r-- | fs/fuse/file.c | 4 |
2 files changed, 16 insertions, 5 deletions
diff --git a/fs/fuse/dev.c b/fs/fuse/dev.c index 3c44ce359a00..69ebf2ecb089 100644 --- a/fs/fuse/dev.c +++ b/fs/fuse/dev.c | |||
@@ -269,7 +269,7 @@ static void flush_bg_queue(struct fuse_conn *fc) | |||
269 | * Called with fc->lock, unlocks it | 269 | * Called with fc->lock, unlocks it |
270 | */ | 270 | */ |
271 | static void request_end(struct fuse_conn *fc, struct fuse_req *req) | 271 | static void request_end(struct fuse_conn *fc, struct fuse_req *req) |
272 | __releases(fc->lock) | 272 | __releases(&fc->lock) |
273 | { | 273 | { |
274 | void (*end) (struct fuse_conn *, struct fuse_req *) = req->end; | 274 | void (*end) (struct fuse_conn *, struct fuse_req *) = req->end; |
275 | req->end = NULL; | 275 | req->end = NULL; |
@@ -298,7 +298,8 @@ static void request_end(struct fuse_conn *fc, struct fuse_req *req) | |||
298 | 298 | ||
299 | static void wait_answer_interruptible(struct fuse_conn *fc, | 299 | static void wait_answer_interruptible(struct fuse_conn *fc, |
300 | struct fuse_req *req) | 300 | struct fuse_req *req) |
301 | __releases(fc->lock) __acquires(fc->lock) | 301 | __releases(&fc->lock) |
302 | __acquires(&fc->lock) | ||
302 | { | 303 | { |
303 | if (signal_pending(current)) | 304 | if (signal_pending(current)) |
304 | return; | 305 | return; |
@@ -316,7 +317,8 @@ static void queue_interrupt(struct fuse_conn *fc, struct fuse_req *req) | |||
316 | } | 317 | } |
317 | 318 | ||
318 | static void request_wait_answer(struct fuse_conn *fc, struct fuse_req *req) | 319 | static void request_wait_answer(struct fuse_conn *fc, struct fuse_req *req) |
319 | __releases(fc->lock) __acquires(fc->lock) | 320 | __releases(&fc->lock) |
321 | __acquires(&fc->lock) | ||
320 | { | 322 | { |
321 | if (!fc->no_interrupt) { | 323 | if (!fc->no_interrupt) { |
322 | /* Any signal may interrupt this */ | 324 | /* Any signal may interrupt this */ |
@@ -668,6 +670,8 @@ static int request_pending(struct fuse_conn *fc) | |||
668 | 670 | ||
669 | /* Wait until a request is available on the pending list */ | 671 | /* Wait until a request is available on the pending list */ |
670 | static void request_wait(struct fuse_conn *fc) | 672 | static void request_wait(struct fuse_conn *fc) |
673 | __releases(&fc->lock) | ||
674 | __acquires(&fc->lock) | ||
671 | { | 675 | { |
672 | DECLARE_WAITQUEUE(wait, current); | 676 | DECLARE_WAITQUEUE(wait, current); |
673 | 677 | ||
@@ -695,7 +699,7 @@ static void request_wait(struct fuse_conn *fc) | |||
695 | */ | 699 | */ |
696 | static int fuse_read_interrupt(struct fuse_conn *fc, struct fuse_req *req, | 700 | static int fuse_read_interrupt(struct fuse_conn *fc, struct fuse_req *req, |
697 | const struct iovec *iov, unsigned long nr_segs) | 701 | const struct iovec *iov, unsigned long nr_segs) |
698 | __releases(fc->lock) | 702 | __releases(&fc->lock) |
699 | { | 703 | { |
700 | struct fuse_copy_state cs; | 704 | struct fuse_copy_state cs; |
701 | struct fuse_in_header ih; | 705 | struct fuse_in_header ih; |
@@ -1012,6 +1016,8 @@ static unsigned fuse_dev_poll(struct file *file, poll_table *wait) | |||
1012 | * This function releases and reacquires fc->lock | 1016 | * This function releases and reacquires fc->lock |
1013 | */ | 1017 | */ |
1014 | static void end_requests(struct fuse_conn *fc, struct list_head *head) | 1018 | static void end_requests(struct fuse_conn *fc, struct list_head *head) |
1019 | __releases(&fc->lock) | ||
1020 | __acquires(&fc->lock) | ||
1015 | { | 1021 | { |
1016 | while (!list_empty(head)) { | 1022 | while (!list_empty(head)) { |
1017 | struct fuse_req *req; | 1023 | struct fuse_req *req; |
@@ -1034,7 +1040,8 @@ static void end_requests(struct fuse_conn *fc, struct list_head *head) | |||
1034 | * locked). | 1040 | * locked). |
1035 | */ | 1041 | */ |
1036 | static void end_io_requests(struct fuse_conn *fc) | 1042 | static void end_io_requests(struct fuse_conn *fc) |
1037 | __releases(fc->lock) __acquires(fc->lock) | 1043 | __releases(&fc->lock) |
1044 | __acquires(&fc->lock) | ||
1038 | { | 1045 | { |
1039 | while (!list_empty(&fc->io)) { | 1046 | while (!list_empty(&fc->io)) { |
1040 | struct fuse_req *req = | 1047 | struct fuse_req *req = |
diff --git a/fs/fuse/file.c b/fs/fuse/file.c index 4d2f1339a886..1a057f02e7da 100644 --- a/fs/fuse/file.c +++ b/fs/fuse/file.c | |||
@@ -1068,6 +1068,8 @@ static void fuse_writepage_finish(struct fuse_conn *fc, struct fuse_req *req) | |||
1068 | 1068 | ||
1069 | /* Called under fc->lock, may release and reacquire it */ | 1069 | /* Called under fc->lock, may release and reacquire it */ |
1070 | static void fuse_send_writepage(struct fuse_conn *fc, struct fuse_req *req) | 1070 | static void fuse_send_writepage(struct fuse_conn *fc, struct fuse_req *req) |
1071 | __releases(&fc->lock) | ||
1072 | __acquires(&fc->lock) | ||
1071 | { | 1073 | { |
1072 | struct fuse_inode *fi = get_fuse_inode(req->inode); | 1074 | struct fuse_inode *fi = get_fuse_inode(req->inode); |
1073 | loff_t size = i_size_read(req->inode); | 1075 | loff_t size = i_size_read(req->inode); |
@@ -1105,6 +1107,8 @@ static void fuse_send_writepage(struct fuse_conn *fc, struct fuse_req *req) | |||
1105 | * Called with fc->lock | 1107 | * Called with fc->lock |
1106 | */ | 1108 | */ |
1107 | void fuse_flush_writepages(struct inode *inode) | 1109 | void fuse_flush_writepages(struct inode *inode) |
1110 | __releases(&fc->lock) | ||
1111 | __acquires(&fc->lock) | ||
1108 | { | 1112 | { |
1109 | struct fuse_conn *fc = get_fuse_conn(inode); | 1113 | struct fuse_conn *fc = get_fuse_conn(inode); |
1110 | struct fuse_inode *fi = get_fuse_inode(inode); | 1114 | struct fuse_inode *fi = get_fuse_inode(inode); |