From: Yi Yang <yangy...@inspur.com> In production system, both IPv4 and IPv6 are required, this patch series added TCP/IPv6 and UDP/IPv6 gro support for both VLAN and VXLAN use cases, with this patch seiries applied, DPDK can support gro for all the below cases:
VLAN TCP/IPv4 VLAN UDP/IPv4 VLAN TCP/IPv6 VLAN UDP/IPv6 IPv4 VXLAN TCP/IPv4 IPv4 VXLAN UDP/IPv4 IPv4 VXLAN TCP/IPv6 IPv4 VXLAN UDP/IPv6 IPv6 VXLAN TCP/IPv4 IPv6 VXLAN UDP/IPv4 IPv6 VXLAN TCP/IPv6 IPv4 VXLAN UDP/IPv6 Yi Yang (8): gro: support TCP/IPv6 gro: support IPv4 VXLAN TCP/IPv6 gro: support IPv6 VXLAN TCP/IPv4 gro: support IPv6 VXLAN TCP/IPv6 gro: support UDP/IPv6 gro: support IPv4 VXLAN UDP/IPv6 gro: support IPv6 VXLAN UDP/IPv4 gro: support IPv6 VXLAN UDP/IPv6 .../prog_guide/generic_receive_offload_lib.rst | 16 +- doc/guides/rel_notes/release_21_02.rst | 39 ++ lib/librte_gro/gro_tcp6.c | 368 +++++++++++++ lib/librte_gro/gro_tcp6.h | 314 +++++++++++ lib/librte_gro/gro_udp6.c | 487 +++++++++++++++++ lib/librte_gro/gro_udp6.h | 284 ++++++++++ lib/librte_gro/gro_vxlan6_tcp4.c | 507 +++++++++++++++++ lib/librte_gro/gro_vxlan6_tcp4.h | 153 ++++++ lib/librte_gro/gro_vxlan6_tcp6.c | 464 ++++++++++++++++ lib/librte_gro/gro_vxlan6_tcp6.h | 153 ++++++ lib/librte_gro/gro_vxlan6_udp4.c | 559 +++++++++++++++++++ lib/librte_gro/gro_vxlan6_udp4.h | 148 +++++ lib/librte_gro/gro_vxlan6_udp6.c | 589 ++++++++++++++++++++ lib/librte_gro/gro_vxlan6_udp6.h | 148 +++++ lib/librte_gro/gro_vxlan_tcp6.c | 496 +++++++++++++++++ lib/librte_gro/gro_vxlan_tcp6.h | 156 ++++++ lib/librte_gro/gro_vxlan_udp6.c | 607 +++++++++++++++++++++ lib/librte_gro/gro_vxlan_udp6.h | 152 ++++++ lib/librte_gro/meson.build | 2 +- lib/librte_gro/rte_gro.c | 537 +++++++++++++++++- lib/librte_gro/rte_gro.h | 24 + 21 files changed, 6186 insertions(+), 17 deletions(-) create mode 100644 lib/librte_gro/gro_tcp6.c create mode 100644 lib/librte_gro/gro_tcp6.h create mode 100644 lib/librte_gro/gro_udp6.c create mode 100644 lib/librte_gro/gro_udp6.h create mode 100644 lib/librte_gro/gro_vxlan6_tcp4.c create mode 100644 lib/librte_gro/gro_vxlan6_tcp4.h create mode 100644 lib/librte_gro/gro_vxlan6_tcp6.c create mode 100644 lib/librte_gro/gro_vxlan6_tcp6.h create mode 100644 lib/librte_gro/gro_vxlan6_udp4.c create mode 100644 lib/librte_gro/gro_vxlan6_udp4.h create mode 100644 lib/librte_gro/gro_vxlan6_udp6.c create mode 100644 lib/librte_gro/gro_vxlan6_udp6.h create mode 100644 lib/librte_gro/gro_vxlan_tcp6.c create mode 100644 lib/librte_gro/gro_vxlan_tcp6.h create mode 100644 lib/librte_gro/gro_vxlan_udp6.c create mode 100644 lib/librte_gro/gro_vxlan_udp6.h -- 1.8.3.1