public inbox for virtio-comment@lists.linux.dev
 help / color / mirror / Atom feed
* [PATCH v11 0/4] virtio-net: define UDP tunnel offload
@ 2024-11-27  9:36 Paolo Abeni
  2024-11-27  9:36 ` [PATCH v11 1/4] virtio-net: clarify NEEDS_CSUM semantic for GSO packats Paolo Abeni
                   ` (4 more replies)
  0 siblings, 5 replies; 27+ messages in thread
From: Paolo Abeni @ 2024-11-27  9:36 UTC (permalink / raw)
  To: virtio-comment
  Cc: maxime.coquelin, Eelco Chaudron, Jason Wang, Stefano Garzarella,
	Willem de Bruijn, kshankar

UDP tunnel usage is ubiquitous in container deployment, and the ability
to offload UDP encapsulated GSO traffic impacts greatly the performances
and the CPU utilization of such use cases.

This series includes:
- clarifications on the current semantic of NEEDS_CSUM offload
(patch 1) and DATA_VALID offload (patch 2) to make later changes easier
to follow,
- new features definition to handle both UDP tunnel segmentation
offload (patch 3).
- new features definition to handle UDP tunnel outer checksum offload
(patch 4).

A PoC implementation is available here:

https://github.com/pabeni/linux-devel/commits/virtio_tunnel_gso_v10/
https://github.com/pabeni/qemu/tree/virtio_tunnel_gso_v9

Note that both implementations has not been updated since the previous
iteration, since there are no additional functional changes in v11.

Changes from v10:
- added patch 2
- clarified only a single encapsulation level is supported (patch 3)
- s/TCP or UDP GSO packets/GSO packets/ (patch 3)
- 'to the outer UDP pseudo header' -> 'to the outer UDP pseudo header
  checksum' (patch 4)
https://lore.kernel.org/virtio-comment/cover.1731084277.git.pabeni@redhat.com/

Changes from v9:
- added patch 1
- clarified that 'hdr_len' accounts for the inner header for GSO over
UDP tunnel packets
- DATA_VALID is not be allowed for GSO over UDP tunnel packets.
https://lore.kernel.org/virtio-comment/cover.1728029499.git.pabeni@redhat.com/

Changes from v8:
- rebased on top of virtio-1.4, changed udp-tunnel features number
  to avoid conflicts/duplications
- Clarified the usage of DATA_VALID flag with UDP tunneled GSO packets
- mandate strict hdr validation on the rx side, too - for UDP tunneled
  GSO packets only
https://lore.kernel.org/virtio-comment/cover.1725463935.git.pabeni@redhat.com/

Changes from v7:
- minor cleanup in patch 1/2
- dropped confusing wording about csum validation in patch 2/2

Changes from v6:
- replaced inner_protocol_type with
  VIRTIO_NET_HDR_GSO_UDP_TUNNEL_IPV{4,6}
- many clarifications and cleanup, see the individual patches changelog
  for the details

Changes from v5:
- split in 2 patches
- dropped outer_mh_offset field
- many csum related clarification
---
Paolo Abeni (4):
  virtio-net: clarify NEEDS_CSUM semantic for GSO packats.
  virtio-net: clarify DATA_VALID  semantic for encap protos.
  virtio-net: define UDP tunnel segmentation offload feature
  virtio-net: define UDP tunnel checksum offload feature

 device-types/net/description.tex | 355 ++++++++++++++++++++++++++++++-
 1 file changed, 345 insertions(+), 10 deletions(-)

-- 
2.45.2


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

end of thread, other threads:[~2025-01-26  6:24 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-11-27  9:36 [PATCH v11 0/4] virtio-net: define UDP tunnel offload Paolo Abeni
2024-11-27  9:36 ` [PATCH v11 1/4] virtio-net: clarify NEEDS_CSUM semantic for GSO packats Paolo Abeni
2024-11-28  3:00   ` Jason Wang
2025-01-19  7:56   ` Parav Pandit
2024-11-27  9:36 ` [PATCH v11 2/4] virtio-net: clarify DATA_VALID semantic for encap protos Paolo Abeni
2024-11-28  3:01   ` Jason Wang
2025-01-19  7:57   ` Parav Pandit
2024-11-27  9:36 ` [PATCH v11 3/4] virtio-net: define UDP tunnel segmentation offload feature Paolo Abeni
2024-11-28  3:01   ` Jason Wang
2025-01-19  8:06   ` Parav Pandit
2025-01-20  8:44     ` Paolo Abeni
2025-01-20  8:57       ` Parav Pandit
2025-01-20  9:03     ` Cornelia Huck
2025-01-20 11:32       ` Parav Pandit
2025-01-20 12:20         ` Cornelia Huck
2025-01-20 14:19           ` Parav Pandit
2025-01-20 14:50             ` Cornelia Huck
2025-01-21 18:40             ` Paolo Abeni
2025-01-21 19:38               ` Parav Pandit
2025-01-22 14:43                 ` Paolo Abeni
2025-01-26  6:24               ` Parav Pandit
2024-11-27  9:36 ` [PATCH v11 4/4] virtio-net: define UDP tunnel checksum " Paolo Abeni
2024-11-28  3:01   ` Jason Wang
2024-11-27  9:48 ` [PATCH v11 0/4] virtio-net: define UDP tunnel offload Paolo Abeni
2025-01-14 15:04   ` Paolo Abeni
2025-01-14 15:16     ` Michael S. Tsirkin
2025-01-14 15:57       ` Paolo Abeni

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox