From: Paolo Abeni <pabeni@redhat.com>
To: netdev@vger.kernel.org
Cc: "David S. Miller" <davem@davemloft.net>,
Jakub Kicinski <kuba@kernel.org>,
Steffen Klassert <steffen.klassert@secunet.com>,
Willem de Bruijn <willemb@google.com>,
Alexander Lobakin <alobakin@pm.me>
Subject: [PATCH net-next 5/8] vxlan: allow L4 GRO passthrou
Date: Sun, 21 Mar 2021 18:01:16 +0100 [thread overview]
Message-ID: <a92d536898ba23065e86eb26675fffeadba66f12.1616345643.git.pabeni@redhat.com> (raw)
In-Reply-To: <cover.1616345643.git.pabeni@redhat.com>
When passing up an UDP GSO packet with L4 aggregation, there is
no need to segment it at the vxlan level. We can propagate the
packet untouched and let it be segmented later, if needed.
Introduce an helper to allow let the UDP socket accepting any
L4 aggregation and use it in the vxlan driver.
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
---
drivers/net/vxlan.c | 1 +
include/linux/udp.h | 5 +++++
2 files changed, 6 insertions(+)
diff --git a/drivers/net/vxlan.c b/drivers/net/vxlan.c
index 7665817f3cb61..39ee1300cdd9d 100644
--- a/drivers/net/vxlan.c
+++ b/drivers/net/vxlan.c
@@ -3484,6 +3484,7 @@ static struct socket *vxlan_create_sock(struct net *net, bool ipv6,
if (err < 0)
return ERR_PTR(err);
+ udp_allow_gso(sock->sk);
return sock;
}
diff --git a/include/linux/udp.h b/include/linux/udp.h
index 6da342f15f351..0444f2fb6002e 100644
--- a/include/linux/udp.h
+++ b/include/linux/udp.h
@@ -137,6 +137,11 @@ static inline bool udp_unexpected_gso(struct sock *sk, struct sk_buff *skb)
return skb_is_gso(skb) && skb_shinfo(skb)->gso_type & udp_sk(sk)->unexpected_gso;
}
+static inline void udp_allow_gso(struct sock *sk)
+{
+ udp_sk(sk)->unexpected_gso = 0;
+}
+
#define udp_portaddr_for_each_entry(__sk, list) \
hlist_for_each_entry(__sk, list, __sk_common.skc_portaddr_node)
--
2.26.2
next prev parent reply other threads:[~2021-03-21 17:02 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-03-21 17:01 [PATCH net-next 0/8] udp: GRO L4 improvements Paolo Abeni
2021-03-21 17:01 ` [PATCH net-next 1/8] udp: fixup csum for GSO receive slow path Paolo Abeni
2021-03-22 13:18 ` Willem de Bruijn
2021-03-22 16:34 ` Paolo Abeni
2021-03-24 1:45 ` Willem de Bruijn
2021-03-24 1:49 ` Willem de Bruijn
2021-03-24 14:37 ` Paolo Abeni
2021-03-24 22:36 ` Willem de Bruijn
2021-03-25 10:56 ` Paolo Abeni
2021-03-25 13:53 ` Willem de Bruijn
2021-03-25 16:47 ` Paolo Abeni
2021-03-21 17:01 ` [PATCH net-next 2/8] udp: skip fwd/list GRO for tunnel packets Paolo Abeni
2021-03-22 13:24 ` Willem de Bruijn
2021-03-22 16:41 ` Paolo Abeni
2021-03-24 1:54 ` Willem de Bruijn
2021-03-24 14:50 ` ! Paolo Abeni
2021-03-24 22:45 ` ! Willem de Bruijn
2021-03-21 17:01 ` [PATCH net-next 3/8] udp: properly complete L4 GRO over UDP tunnel packet Paolo Abeni
2021-03-22 13:30 ` Willem de Bruijn
2021-03-22 16:59 ` Paolo Abeni
2021-03-24 2:13 ` Willem de Bruijn
2021-03-21 17:01 ` [PATCH net-next 4/8] udp: never accept GSO_FRAGLIST packets Paolo Abeni
2021-03-22 13:42 ` Willem de Bruijn
2021-03-22 17:09 ` Paolo Abeni
2021-03-24 2:21 ` Willem de Bruijn
2021-03-24 18:59 ` Paolo Abeni
2021-03-24 22:12 ` Willem de Bruijn
2021-03-25 11:50 ` Paolo Abeni
2021-03-21 17:01 ` Paolo Abeni [this message]
2021-03-21 17:01 ` [PATCH net-next 6/8] geneve: allow UDP L4 GRO passthrou Paolo Abeni
2021-03-21 17:01 ` [PATCH net-next 7/8] bareudp: " Paolo Abeni
2021-03-21 17:01 ` [PATCH net-next 8/8] selftests: net: add UDP GRO forwarding self-tests Paolo Abeni
2021-03-22 13:44 ` Willem de Bruijn
2021-03-22 17:18 ` Paolo Abeni
2021-03-23 17:12 ` Paolo Abeni
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=a92d536898ba23065e86eb26675fffeadba66f12.1616345643.git.pabeni@redhat.com \
--to=pabeni@redhat.com \
--cc=alobakin@pm.me \
--cc=davem@davemloft.net \
--cc=kuba@kernel.org \
--cc=netdev@vger.kernel.org \
--cc=steffen.klassert@secunet.com \
--cc=willemb@google.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.