netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH net-next v3 0/8] udp: GRO L4 improvements
@ 2021-03-30 10:28 Paolo Abeni
  2021-03-30 10:28 ` [PATCH net-next v3 1/8] udp: fixup csum for GSO receive slow path Paolo Abeni
                   ` (8 more replies)
  0 siblings, 9 replies; 14+ messages in thread
From: Paolo Abeni @ 2021-03-30 10:28 UTC (permalink / raw)
  To: netdev
  Cc: David S. Miller, Jakub Kicinski, Steffen Klassert,
	Willem de Bruijn, Alexander Lobakin

This series improves the UDP L4 - either 'forward' or 'frag_list' -
co-existence with UDP tunnel GRO, allowing the first to take place
correctly even for encapsulated UDP traffic.

The first for patches are mostly bugfixes, addressing some GRO 
edge-cases when both tunnels and L4 are present, enabled and in use.

The next 3 patches avoid unneeded segmentation when UDP GRO
traffic traverses in the receive path UDP tunnels.

Finally, some self-tests are included, covering the relevant
GRO scenarios.

Even if most patches are actually bugfixes, this series is
targeting net-next, as overall it makes available a new feature.

v2 -> v3:
 - no code changes, more verbose commit messages and comment in
   patch 1/8

v1 -> v2:
 - restrict post segmentation csum fixup to the only the relevant pkts
 - use individual 'accept_gso_type' fields instead of whole gso bitmask
   (Willem)
 - use only ipv6 addesses from test range in self-tests (Willem)
 - hopefully clarified most individual patches commit messages

Paolo Abeni (8):
  udp: fixup csum for GSO receive slow path
  udp: skip L4 aggregation for UDP tunnel packets
  udp: properly complete L4 GRO over UDP tunnel packet
  udp: never accept GSO_FRAGLIST packets
  vxlan: allow L4 GRO passthrough
  geneve: allow UDP L4 GRO passthrou
  bareudp: allow UDP L4 GRO passthrou
  selftests: net: add UDP GRO forwarding self-tests

 drivers/net/bareudp.c                     |   1 +
 drivers/net/geneve.c                      |   1 +
 drivers/net/vxlan.c                       |   1 +
 include/linux/udp.h                       |  22 +-
 include/net/udp.h                         |  23 ++
 net/ipv4/udp.c                            |   5 +
 net/ipv4/udp_offload.c                    |  27 ++-
 net/ipv6/udp.c                            |   1 +
 net/ipv6/udp_offload.c                    |   3 +-
 tools/testing/selftests/net/Makefile      |   1 +
 tools/testing/selftests/net/udpgro_fwd.sh | 251 ++++++++++++++++++++++
 11 files changed, 323 insertions(+), 13 deletions(-)
 create mode 100755 tools/testing/selftests/net/udpgro_fwd.sh

-- 
2.26.2


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

end of thread, other threads:[~2021-03-31  0:21 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-03-30 10:28 [PATCH net-next v3 0/8] udp: GRO L4 improvements Paolo Abeni
2021-03-30 10:28 ` [PATCH net-next v3 1/8] udp: fixup csum for GSO receive slow path Paolo Abeni
2021-03-30 15:15   ` Willem de Bruijn
2021-03-30 10:28 ` [PATCH net-next v3 2/8] udp: skip L4 aggregation for UDP tunnel packets Paolo Abeni
2021-03-30 10:28 ` [PATCH net-next v3 3/8] udp: properly complete L4 GRO over UDP tunnel packet Paolo Abeni
2021-03-30 10:28 ` [PATCH net-next v3 4/8] udp: never accept GSO_FRAGLIST packets Paolo Abeni
2021-03-30 15:14   ` Willem de Bruijn
2021-03-30 10:28 ` [PATCH net-next v3 5/8] vxlan: allow L4 GRO passthrough Paolo Abeni
2021-03-30 15:14   ` Willem de Bruijn
2021-03-30 10:28 ` [PATCH net-next v3 6/8] geneve: allow UDP L4 GRO passthrou Paolo Abeni
2021-03-30 10:28 ` [PATCH net-next v3 7/8] bareudp: " Paolo Abeni
2021-03-30 10:28 ` [PATCH net-next v3 8/8] selftests: net: add UDP GRO forwarding self-tests Paolo Abeni
2021-03-30 15:49   ` Willem de Bruijn
2021-03-31  0:20 ` [PATCH net-next v3 0/8] udp: GRO L4 improvements patchwork-bot+netdevbpf

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).