Skip to contentSkip to conversation

net: move ‘__zerocopy_sg_from_iter’ prototype to header file <linux/skbuff.h>

PATCH In review Mathieu Malaterre 2 participants 3 messages Oct 31, 2018 – Nov 5, 2018

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 net: move ‘__zerocopy_sg_from_iter’ prototype to header file <linux/skbuff.h>

This makes it clear the function is part of the API. Also this will remove a warning triggered at W=1:

net/core/datagram.c:581:5: warning: no previous prototype for ‘__zerocopy_sg_from_iter’ [-Wmissing-prototypes]

---
 include/linux/skbuff.h | 2 ++
 net/core/skbuff.c      | 3 ---
 2 files changed, 2 insertions(+), 3 deletions(-)
include/linux/skbuff.h +2 -0
index 0ba687454267..cca7c0a3c176 100644
@@ -3311,6 +3311,8 @@ int skb_copy_and_csum_datagram_msg(struct sk_buff *skb, int hlen,
 				   struct msghdr *msg);
 int skb_copy_datagram_from_iter(struct sk_buff *skb, int offset,
 				 struct iov_iter *from, int len);
+int __zerocopy_sg_from_iter(struct sock *sk, struct sk_buff *skb,
+			    struct iov_iter *from, size_t length);
 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 len);
net/core/skbuff.c +0 -3
index 946de0e24c87..7eb7e0e104d4 100644
@@ -1102,9 +1102,6 @@ void sock_zerocopy_put_abort(struct ubuf_info *uarg)
 }
 EXPORT_SYMBOL_GPL(sock_zerocopy_put_abort);
 
-extern int __zerocopy_sg_from_iter(struct sock *sk, struct sk_buff *skb,
-				   struct iov_iter *from, size_t length);
-
 int skb_zerocopy_iter_stream(struct sock *sk, struct sk_buff *skb,
 			     struct msghdr *msg, int len,
 			     struct ubuf_info *uarg)
Signature · 1 line
2.11.0
maintainer
#1 lore raw

From: Mathieu Malaterre <[email protected]>
Date: Wed, 31 Oct 2018 12:34:59 +0100

Quoted 6 lines

This makes it clear the function is part of the API. Also this will remove a warning triggered at W=1:

net/core/datagram.c:581:5: warning: no previous prototype for ‘__zerocopy_sg_from_iter’ [-Wmissing-prototypes]

It's not part of the "API", and it shouldn't even be exported to modules.

Only net/core/skbuff.c calls it, and that is never modular.

#2 lore raw
Quoted 7 lines · David Miller

From: Mathieu Malaterre <[email protected]>
Date: Wed, 31 Oct 2018 12:34:59 +0100

Quoted 3 lines

This makes it clear the function is part of the API. Also this will remove a warning triggered at W=1:

Quoted 8 lines
Quoted 3 lines

net/core/datagram.c:581:5: warning: no previous prototype for ‘__zerocopy_sg_from_iter’ [-Wmissing-prototypes]

It's not part of the "API", and it shouldn't even be exported to modules.

Only net/core/skbuff.c calls it, and that is never modular.

OK. I got confused with the EXPORT_SYMBOL(). I'll re-send moving __zerocopy_sg_from_iter to skbuff.c.

Thanks