diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2014-11-28 15:48:29 -0500 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2015-02-04 01:34:15 -0500 |
commit | 21226abb4e9f14d88238964d89b279e461ddc30c (patch) | |
tree | 011a9d9ba825248de5ad0bb6d25a61d69d22ffeb /include/net/udplite.h | |
parent | 57be5bdad759b9dde8b0d0cc630782a1a4ac4b9f (diff) | |
download | lwn-21226abb4e9f14d88238964d89b279e461ddc30c.tar.gz lwn-21226abb4e9f14d88238964d89b279e461ddc30c.zip |
net: switch memcpy_fromiovec()/memcpy_fromiovecend() users to copy_from_iter()
That takes care of the majority of ->sendmsg() instances - most of them
via memcpy_to_msg() or assorted getfrag() callbacks. One place where we
still keep memcpy_fromiovecend() is tipc - there we potentially read the
same data over and over; separate patch, that...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'include/net/udplite.h')
-rw-r--r-- | include/net/udplite.h | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/include/net/udplite.h b/include/net/udplite.h index ae7c8d1fbcad..80761938b9a7 100644 --- a/include/net/udplite.h +++ b/include/net/udplite.h @@ -20,8 +20,7 @@ static __inline__ int udplite_getfrag(void *from, char *to, int offset, int len, int odd, struct sk_buff *skb) { struct msghdr *msg = from; - /* XXX: stripping const */ - return memcpy_fromiovecend(to, (struct iovec *)msg->msg_iter.iov, offset, len); + return copy_from_iter(to, len, &msg->msg_iter) != len ? -EFAULT : 0; } /* Designate sk as UDP-Lite socket */ |