diff mbox series

[net-next,1/5] net: always try to set ubuf in skb_zerocopy_iter_stream

Message ID 398a9b0f677348f62edf3572a4896ddb0ebfb940.1719190216.git.asml.silence@gmail.com (mailing list archive)
State New
Headers show
Series zerocopy tx cleanups | expand

Commit Message

Pavel Begunkov June 27, 2024, 12:59 p.m. UTC
skb_zcopy_set() does nothing if there is already a ubuf_info associated
with an skb, and since ->link_skb should have set it several lines above
the check here essentially does nothing and can be removed. It's also
safer this way, because even if the callback is faulty we'll
have it set.

Signed-off-by: Pavel Begunkov <asml.silence@gmail.com>
---
 net/core/skbuff.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

Comments

Willem de Bruijn June 28, 2024, 5:03 p.m. UTC | #1
Pavel Begunkov wrote:
> skb_zcopy_set() does nothing if there is already a ubuf_info associated
> with an skb, and since ->link_skb should have set it several lines above
> the check here essentially does nothing and can be removed. It's also
> safer this way, because even if the callback is faulty we'll
> have it set.
> 
> Signed-off-by: Pavel Begunkov <asml.silence@gmail.com>

Reviewed-by: Willem de Bruijn <willemb@google.com>
diff mbox series

Patch

diff --git a/net/core/skbuff.c b/net/core/skbuff.c
index 2315c088e91d..9f28822dde6f 100644
--- a/net/core/skbuff.c
+++ b/net/core/skbuff.c
@@ -1884,8 +1884,7 @@  int skb_zerocopy_iter_stream(struct sock *sk, struct sk_buff *skb,
 		return err;
 	}
 
-	if (!uarg->ops->link_skb)
-		skb_zcopy_set(skb, uarg, NULL);
+	skb_zcopy_set(skb, uarg, NULL);
 	return skb->len - orig_len;
 }
 EXPORT_SYMBOL_GPL(skb_zerocopy_iter_stream);