summaryrefslogtreecommitdiff
path: root/include/linux/uio.h
diff options
context:
space:
mode:
authorDavid Howells <dhowells@redhat.com>2021-04-26 00:02:38 +0300
committerDavid Howells <dhowells@redhat.com>2021-04-27 00:55:12 +0300
commit3d14ec1fe61aebe3da85a9b8f2c3d61e43d522e6 (patch)
treebb6b15242a45a6e6fc08d4e12fd469b0ee3f4565 /include/linux/uio.h
parent26aaeffcafe6cbb7c3978fa6ed7555122f8c9f8c (diff)
downloadlinux-3d14ec1fe61aebe3da85a9b8f2c3d61e43d522e6.tar.xz
iov_iter: Four fixes for ITER_XARRAY
Fix four things[1] in the patch that adds ITER_XARRAY[2]: (1) Remove the address_space struct predeclaration. This is a holdover from when it was ITER_MAPPING. (2) Fix _copy_mc_to_iter() so that the xarray segment updates count and iov_offset in the iterator before returning. (3) Fix iov_iter_alignment() to not loop in the xarray case. Because the middle pages are all whole pages, only the end pages need be considered - and this can be reduced to just looking at the start position in the xarray and the iteration size. (4) Fix iov_iter_advance() to limit the size of the advance to no more than the remaining iteration size. Reported-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: David Howells <dhowells@redhat.com> Reviewed-by: Al Viro <viro@zeniv.linux.org.uk> Tested-by: Jeff Layton <jlayton@redhat.com> Tested-by: Dave Wysochanski <dwysocha@redhat.com> Link: https://lore.kernel.org/r/YIVrJT8GwLI0Wlgx@zeniv-ca.linux.org.uk [1] Link: https://lore.kernel.org/r/161918448151.3145707.11541538916600921083.stgit@warthog.procyon.org.uk [2]
Diffstat (limited to 'include/linux/uio.h')
-rw-r--r--include/linux/uio.h1
1 files changed, 0 insertions, 1 deletions
diff --git a/include/linux/uio.h b/include/linux/uio.h
index 5f5ffc45d4aa..d3ec87706d75 100644
--- a/include/linux/uio.h
+++ b/include/linux/uio.h
@@ -10,7 +10,6 @@
#include <uapi/linux/uio.h>
struct page;
-struct address_space;
struct pipe_inode_info;
struct kvec {