netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v4 1/6] udp: allow header check for dodgy GSO_UDP_L4 packets.
@ 2022-12-01 22:33 Andrew Melnychenko
  2022-12-01 22:33 ` [PATCH v4 2/6] uapi/linux/if_tun.h: Added new offload types for USO4/6 Andrew Melnychenko
                   ` (4 more replies)
  0 siblings, 5 replies; 7+ messages in thread
From: Andrew Melnychenko @ 2022-12-01 22:33 UTC (permalink / raw)
  To: davem, edumazet, kuba, pabeni, mst, jasowang, yoshfuji, dsahern,
	netdev, linux-kernel, virtualization
  Cc: devel

Allow UDP_L4 for robust packets.

Signed-off-by: Jason Wang <jasowang@redhat.com>
Signed-off-by: Andrew Melnychenko <andrew@daynix.com>
---
 net/ipv4/udp_offload.c | 3 ++-
 net/ipv6/udp_offload.c | 3 ++-
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/net/ipv4/udp_offload.c b/net/ipv4/udp_offload.c
index 6d1a4bec2614..f65b1a7a0c26 100644
--- a/net/ipv4/udp_offload.c
+++ b/net/ipv4/udp_offload.c
@@ -387,7 +387,8 @@ static struct sk_buff *udp4_ufo_fragment(struct sk_buff *skb,
 	if (!pskb_may_pull(skb, sizeof(struct udphdr)))
 		goto out;
 
-	if (skb_shinfo(skb)->gso_type & SKB_GSO_UDP_L4)
+	if (skb_shinfo(skb)->gso_type & SKB_GSO_UDP_L4 &&
+	    !skb_gso_ok(skb, features | NETIF_F_GSO_ROBUST))
 		return __udp_gso_segment(skb, features, false);
 
 	mss = skb_shinfo(skb)->gso_size;
diff --git a/net/ipv6/udp_offload.c b/net/ipv6/udp_offload.c
index 7720d04ed396..057293293e30 100644
--- a/net/ipv6/udp_offload.c
+++ b/net/ipv6/udp_offload.c
@@ -42,7 +42,8 @@ static struct sk_buff *udp6_ufo_fragment(struct sk_buff *skb,
 		if (!pskb_may_pull(skb, sizeof(struct udphdr)))
 			goto out;
 
-		if (skb_shinfo(skb)->gso_type & SKB_GSO_UDP_L4)
+		if (skb_shinfo(skb)->gso_type & SKB_GSO_UDP_L4 &&
+		    !skb_gso_ok(skb, features | NETIF_F_GSO_ROBUST))
 			return __udp_gso_segment(skb, features, true);
 
 		mss = skb_shinfo(skb)->gso_size;
-- 
2.38.1


^ permalink raw reply related	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2022-12-02 10:04 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-12-01 22:33 [PATCH v4 1/6] udp: allow header check for dodgy GSO_UDP_L4 packets Andrew Melnychenko
2022-12-01 22:33 ` [PATCH v4 2/6] uapi/linux/if_tun.h: Added new offload types for USO4/6 Andrew Melnychenko
2022-12-01 22:33 ` [PATCH v4 3/6] driver/net/tun: Added features for USO Andrew Melnychenko
2022-12-01 22:33 ` [PATCH v4 4/6] uapi/linux/virtio_net.h: Added USO types Andrew Melnychenko
2022-12-02 10:03   ` Michael S. Tsirkin
2022-12-01 22:33 ` [PATCH v4 5/6] linux/virtio_net.h: Support USO offload in vnet header Andrew Melnychenko
2022-12-01 22:33 ` [PATCH v4 6/6] drivers/net/virtio_net.c: Added USO support Andrew Melnychenko

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).