aboutsummaryrefslogtreecommitdiffstats
path: root/net/ipv4/ip_output.c
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2016-11-03 18:17:31 -0400
committerAl Viro <viro@zeniv.linux.org.uk>2016-12-05 14:34:32 -0500
commit0b62fca2623e4633c8819e89946d0da446a5846b (patch)
tree351ddba8eea1b9a6f62ee3fc3f51ba413d423a76 /net/ipv4/ip_output.c
parentmake skb_add_data,{_nocache}() and skb_copy_to_page_nocache() advance only on success (diff)
downloadlinux-dev-0b62fca2623e4633c8819e89946d0da446a5846b.tar.xz
linux-dev-0b62fca2623e4633c8819e89946d0da446a5846b.zip
switch getfrag callbacks to ..._full() primitives
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'net/ipv4/ip_output.c')
-rw-r--r--net/ipv4/ip_output.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/net/ipv4/ip_output.c b/net/ipv4/ip_output.c
index 105908d841a3..be4d149f0321 100644
--- a/net/ipv4/ip_output.c
+++ b/net/ipv4/ip_output.c
@@ -802,11 +802,11 @@ ip_generic_getfrag(void *from, char *to, int offset, int len, int odd, struct sk
struct msghdr *msg = from;
if (skb->ip_summed == CHECKSUM_PARTIAL) {
- if (copy_from_iter(to, len, &msg->msg_iter) != len)
+ if (!copy_from_iter_full(to, len, &msg->msg_iter))
return -EFAULT;
} else {
__wsum csum = 0;
- if (csum_and_copy_from_iter(to, len, &csum, &msg->msg_iter) != len)
+ if (!csum_and_copy_from_iter_full(to, len, &csum, &msg->msg_iter))
return -EFAULT;
skb->csum = csum_block_add(skb->csum, csum, odd);
}