diff options
Diffstat (limited to 'fs')
-rw-r--r-- | fs/fuse/file.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/fs/fuse/file.c b/fs/fuse/file.c index 7e70506297bc..89fdfd1919af 100644 --- a/fs/fuse/file.c +++ b/fs/fuse/file.c | |||
@@ -2710,6 +2710,9 @@ fuse_direct_IO(int rw, struct kiocb *iocb, const struct iovec *iov, | |||
2710 | inode = file->f_mapping->host; | 2710 | inode = file->f_mapping->host; |
2711 | i_size = i_size_read(inode); | 2711 | i_size = i_size_read(inode); |
2712 | 2712 | ||
2713 | if ((rw == READ) && (offset > i_size)) | ||
2714 | return 0; | ||
2715 | |||
2713 | /* optimization for short read */ | 2716 | /* optimization for short read */ |
2714 | if (async_dio && rw != WRITE && offset + count > i_size) { | 2717 | if (async_dio && rw != WRITE && offset + count > i_size) { |
2715 | if (offset >= i_size) | 2718 | if (offset >= i_size) |