|
@@ -299,6 +299,7 @@ static void request_end(struct fuse_conn *fc, struct fuse_req *req)
|
|
|
|
|
|
static void wait_answer_interruptible(struct fuse_conn *fc,
|
|
|
struct fuse_req *req)
|
|
|
+ __releases(fc->lock) __acquires(fc->lock)
|
|
|
{
|
|
|
if (signal_pending(current))
|
|
|
return;
|
|
@@ -315,8 +316,8 @@ static void queue_interrupt(struct fuse_conn *fc, struct fuse_req *req)
|
|
|
kill_fasync(&fc->fasync, SIGIO, POLL_IN);
|
|
|
}
|
|
|
|
|
|
-/* Called with fc->lock held. Releases, and then reacquires it. */
|
|
|
static void request_wait_answer(struct fuse_conn *fc, struct fuse_req *req)
|
|
|
+ __releases(fc->lock) __acquires(fc->lock)
|
|
|
{
|
|
|
if (!fc->no_interrupt) {
|
|
|
/* Any signal may interrupt this */
|
|
@@ -987,6 +988,7 @@ static void end_requests(struct fuse_conn *fc, struct list_head *head)
|
|
|
* locked).
|
|
|
*/
|
|
|
static void end_io_requests(struct fuse_conn *fc)
|
|
|
+ __releases(fc->lock) __acquires(fc->lock)
|
|
|
{
|
|
|
while (!list_empty(&fc->io)) {
|
|
|
struct fuse_req *req =
|