summaryrefslogtreecommitdiff
path: root/fs/iomap.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/iomap.c')
-rw-r--r--fs/iomap.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/fs/iomap.c b/fs/iomap.c
index 141c3cd55a8b..0ca8b0fbbdad 100644
--- a/fs/iomap.c
+++ b/fs/iomap.c
@@ -911,6 +911,9 @@ iomap_dio_rw(struct kiocb *iocb, struct iov_iter *iter,
break;
}
pos += ret;
+
+ if (iov_iter_rw(iter) == READ && pos >= dio->i_size)
+ break;
} while ((count = iov_iter_count(iter)) > 0);
blk_finish_plug(&plug);