diff options
Diffstat (limited to 'fs/fuse/file.c')
-rw-r--r-- | fs/fuse/file.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/fs/fuse/file.c b/fs/fuse/file.c index cc2121b37bf5..b52f9baaa3e7 100644 --- a/fs/fuse/file.c +++ b/fs/fuse/file.c | |||
@@ -2924,10 +2924,12 @@ fuse_direct_IO(struct kiocb *iocb, struct iov_iter *iter) | |||
2924 | } | 2924 | } |
2925 | 2925 | ||
2926 | if (io->async) { | 2926 | if (io->async) { |
2927 | bool blocking = io->blocking; | ||
2928 | |||
2927 | fuse_aio_complete(io, ret < 0 ? ret : 0, -1); | 2929 | fuse_aio_complete(io, ret < 0 ? ret : 0, -1); |
2928 | 2930 | ||
2929 | /* we have a non-extending, async request, so return */ | 2931 | /* we have a non-extending, async request, so return */ |
2930 | if (!io->blocking) | 2932 | if (!blocking) |
2931 | return -EIOCBQUEUED; | 2933 | return -EIOCBQUEUED; |
2932 | 2934 | ||
2933 | wait_for_completion(&wait); | 2935 | wait_for_completion(&wait); |