mbox series

[ovs-dev,v10,0/5] userspace: Add SRv6 tunnel support.

Message ID 20230324100538.70290-1-nmiki@yahoo-corp.jp
Headers show
Series userspace: Add SRv6 tunnel support. | expand

Message

Nobuhiro MIKI March 24, 2023, 10:05 a.m. UTC
v10:
* Clean up tnl_type_to_nw_proto().
* Support frag_hdr=NULL and/or rt_hdr=NULL in parse_ipv6_ext_hdrs().
* Clean up srv6_build_header() to use netdev_tnl_ip_build_header().
* Fix to avoid using sizeof(<type name>) style.
* Add validation that checks segs[0] == params->flow->tunnel.ipv6_dst.
* Add more tests for tests/odp.at.
* Enhance validation for external input to prevent over-writing
v9:
* Fix compile warnings
v8:
* Split the patch into multiple patches.
* Fix docs and NEWS to point to version 3.2.
* Move tests from tests/system-userspace-traffic.at
  to tests/system-traffic.at.
v7:
* fix flake8 error
v6:
* add tests that show interoperability between OVS and native kernel's
  implementation in tests/system-userspace-traffic.at.
* fix the documentation.
* add validation in routing header by parse_ipv6_ext_hdrs.
* add parsing implementation and test in tests/odp.at,
  python/ovs/flow/odp.py and python/ovs/tests/test_odp.py.
* fix coding style.
* add build-time assertion on the structure size.
v5:
* rebased on latest master
v4:
* fix alignment on cast
v3:
* fix alignment on cast
v2:
* fix pointer arithmetic

Nobuhiro MIKI (5):
  tests: Define new ADD_VETH_NS macro.
  tnl-ports: Support multiple nw_protos.
  flow: Support rt_hdr in parse_ipv6_ext_hdrs().
  userspace: Add SRv6 tunnel support.
  odp: Add SRv6 tunnel actions.

 Documentation/faq/configuration.rst |  21 +++++
 Documentation/faq/releases.rst      |   1 +
 NEWS                                |   2 +
 include/linux/openvswitch.h         |   1 +
 lib/conntrack.c                     |   4 +-
 lib/dpif-netlink-rtnl.c             |   5 ++
 lib/dpif-netlink.c                  |   5 ++
 lib/flow.c                          |  48 +++++++---
 lib/flow.h                          |   3 +-
 lib/ipf.c                           |  15 ++--
 lib/netdev-native-tnl.c             | 131 ++++++++++++++++++++++++++++
 lib/netdev-native-tnl.h             |  10 +++
 lib/netdev-vport.c                  |  53 +++++++++++
 lib/netdev.h                        |   4 +
 lib/odp-util.c                      |  70 +++++++++++++++
 lib/packets.h                       |  20 +++++
 lib/tnl-ports.c                     |  87 +++++++++++-------
 ofproto/ofproto-dpif-xlate.c        |   3 +
 python/ovs/flow/odp.py              |   8 ++
 python/ovs/tests/test_odp.py        |  16 ++++
 tests/odp.at                        |  12 ++-
 tests/system-common-macros.at       |  16 ++++
 tests/system-kmod-macros.at         |   8 ++
 tests/system-traffic.at             | 119 +++++++++++++++++++++++++
 tests/system-userspace-macros.at    |   6 ++
 tests/tunnel-push-pop-ipv6.at       |  23 +++++
 tests/tunnel.at                     |  56 ++++++++++++
 27 files changed, 692 insertions(+), 55 deletions(-)