aboutsummaryrefslogtreecommitdiff
path: root/fs/btrfs/file.c
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2020-11-27 21:04:53 +0100
committerArnd Bergmann <arnd@arndb.de>2020-11-27 21:04:53 +0100
commit718e43b5f850a8fb52933ac5ecf29f5eef48a349 (patch)
tree7b300d58e0c4c654c62e9d9873097ad0a860367d /fs/btrfs/file.c
parent85ccf83e5c5b032dad0d3b162f3408a7fc32c0e7 (diff)
parent3cea11cd5e3b00d91caf0b4730194039b45c5891 (diff)
Backmerge tag 'v5.10-rc2' into arm/drivers
The SCMI pull request for the arm/drivers branch requires v5.10-rc2 because of dependencies with other git trees, so merge that in here. Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Diffstat (limited to 'fs/btrfs/file.c')
-rw-r--r--fs/btrfs/file.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/btrfs/file.c b/fs/btrfs/file.c
index 0ff659455b1e..87355a38a654 100644
--- a/fs/btrfs/file.c
+++ b/fs/btrfs/file.c
@@ -3628,7 +3628,8 @@ static ssize_t btrfs_file_read_iter(struct kiocb *iocb, struct iov_iter *to)
inode_lock_shared(inode);
ret = btrfs_direct_IO(iocb, to);
inode_unlock_shared(inode);
- if (ret < 0)
+ if (ret < 0 || !iov_iter_count(to) ||
+ iocb->ki_pos >= i_size_read(file_inode(iocb->ki_filp)))
return ret;
}