summaryrefslogtreecommitdiffstats
path: root/include/linux/skbuff.h
diff options
context:
space:
mode:
authorAl Viro2014-06-19 20:15:22 +0200
committerAl Viro2014-11-24 11:03:08 +0100
commit3a654f975bf99165016fe257a3d2b4e6716e4931 (patch)
tree1c729d7962988c13efaf40a1c946462b4666d99a /include/linux/skbuff.h
parentswitch macvtap to ->read_iter() (diff)
downloadkernel-qcow2-linux-3a654f975bf99165016fe257a3d2b4e6716e4931.tar.gz
kernel-qcow2-linux-3a654f975bf99165016fe257a3d2b4e6716e4931.tar.xz
kernel-qcow2-linux-3a654f975bf99165016fe257a3d2b4e6716e4931.zip
new helpers: skb_copy_datagram_from_iter() and zerocopy_sg_from_iter()
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'include/linux/skbuff.h')
-rw-r--r--include/linux/skbuff.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/include/linux/skbuff.h b/include/linux/skbuff.h
index d048347a010a..a01cd9ad0b51 100644
--- a/include/linux/skbuff.h
+++ b/include/linux/skbuff.h
@@ -2659,10 +2659,13 @@ static inline int skb_copy_and_csum_datagram_msg(struct sk_buff *skb, int hlen,
int skb_copy_datagram_from_iovec(struct sk_buff *skb, int offset,
const struct iovec *from, int from_offset,
int len);
+int skb_copy_datagram_from_iter(struct sk_buff *skb, int offset,
+ struct iov_iter *from, int len);
int zerocopy_sg_from_iovec(struct sk_buff *skb, const struct iovec *frm,
int offset, size_t count);
int skb_copy_datagram_iter(const struct sk_buff *from, int offset,
struct iov_iter *to, int size);
+int zerocopy_sg_from_iter(struct sk_buff *skb, struct iov_iter *frm);
void skb_free_datagram(struct sock *sk, struct sk_buff *skb);
void skb_free_datagram_locked(struct sock *sk, struct sk_buff *skb);
int skb_kill_datagram(struct sock *sk, struct sk_buff *skb, unsigned int flags);