diff options
Diffstat (limited to 'net/unix/af_unix.c')
-rw-r--r-- | net/unix/af_unix.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/net/unix/af_unix.c b/net/unix/af_unix.c index e96884380732..8e1b10274b02 100644 --- a/net/unix/af_unix.c +++ b/net/unix/af_unix.c | |||
@@ -1516,7 +1516,7 @@ static int unix_dgram_sendmsg(struct kiocb *kiocb, struct socket *sock, | |||
1516 | skb_put(skb, len - data_len); | 1516 | skb_put(skb, len - data_len); |
1517 | skb->data_len = data_len; | 1517 | skb->data_len = data_len; |
1518 | skb->len = len; | 1518 | skb->len = len; |
1519 | err = skb_copy_datagram_from_iovec(skb, 0, msg->msg_iov, 0, len); | 1519 | err = skb_copy_datagram_from_iter(skb, 0, &msg->msg_iter, len); |
1520 | if (err) | 1520 | if (err) |
1521 | goto out_free; | 1521 | goto out_free; |
1522 | 1522 | ||
@@ -1694,8 +1694,7 @@ static int unix_stream_sendmsg(struct kiocb *kiocb, struct socket *sock, | |||
1694 | skb_put(skb, size - data_len); | 1694 | skb_put(skb, size - data_len); |
1695 | skb->data_len = data_len; | 1695 | skb->data_len = data_len; |
1696 | skb->len = size; | 1696 | skb->len = size; |
1697 | err = skb_copy_datagram_from_iovec(skb, 0, msg->msg_iov, | 1697 | err = skb_copy_datagram_from_iter(skb, 0, &msg->msg_iter, size); |
1698 | sent, size); | ||
1699 | if (err) { | 1698 | if (err) { |
1700 | kfree_skb(skb); | 1699 | kfree_skb(skb); |
1701 | goto out_err; | 1700 | goto out_err; |
@@ -1825,7 +1824,7 @@ static int unix_dgram_recvmsg(struct kiocb *iocb, struct socket *sock, | |||
1825 | else if (size < skb->len - skip) | 1824 | else if (size < skb->len - skip) |
1826 | msg->msg_flags |= MSG_TRUNC; | 1825 | msg->msg_flags |= MSG_TRUNC; |
1827 | 1826 | ||
1828 | err = skb_copy_datagram_iovec(skb, skip, msg->msg_iov, size); | 1827 | err = skb_copy_datagram_msg(skb, skip, msg, size); |
1829 | if (err) | 1828 | if (err) |
1830 | goto out_free; | 1829 | goto out_free; |
1831 | 1830 | ||
@@ -2030,8 +2029,8 @@ again: | |||
2030 | } | 2029 | } |
2031 | 2030 | ||
2032 | chunk = min_t(unsigned int, unix_skb_len(skb) - skip, size); | 2031 | chunk = min_t(unsigned int, unix_skb_len(skb) - skip, size); |
2033 | if (skb_copy_datagram_iovec(skb, UNIXCB(skb).consumed + skip, | 2032 | if (skb_copy_datagram_msg(skb, UNIXCB(skb).consumed + skip, |
2034 | msg->msg_iov, chunk)) { | 2033 | msg, chunk)) { |
2035 | if (copied == 0) | 2034 | if (copied == 0) |
2036 | copied = -EFAULT; | 2035 | copied = -EFAULT; |
2037 | break; | 2036 | break; |