diff options
author | David S. Miller | 2017-08-15 20:23:23 -0700 |
---|---|---|
committer | David S. Miller | 2017-08-15 20:23:23 -0700 |
commit | 463910e2dff580e4e9a678af710b4818b5189691 (patch) | |
tree | 21b4e53cdbec7e5a537ddfc1598fbf17deae57e2 /include/net/udp.h | |
parent | 22cb7a3ac380ecaab6837670963813599b123a53 (diff) | |
parent | 510c8a899caf095cb13d09d203573deef15db2fe (diff) |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Diffstat (limited to 'include/net/udp.h')
-rw-r--r-- | include/net/udp.h | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/include/net/udp.h b/include/net/udp.h index 20dcdca4e85c..4e5f23fec35e 100644 --- a/include/net/udp.h +++ b/include/net/udp.h @@ -366,12 +366,13 @@ static inline bool udp_skb_is_linear(struct sk_buff *skb) static inline int copy_linear_skb(struct sk_buff *skb, int len, int off, struct iov_iter *to) { - int n, copy = len - off; + int n; - n = copy_to_iter(skb->data + off, copy, to); - if (n == copy) + n = copy_to_iter(skb->data + off, len, to); + if (n == len) return 0; + iov_iter_revert(to, n); return -EFAULT; } |