This patch series update OVS compat layer to handle IPv6 UDP based tunnels. While doing this various fixes and updates to tunnel code are also brought in. This series sync OVS tunnel compat codebase upto latest net branch (commit 9a0fee2b552b1235fb1706ae1fc664ae74573be8).
v3-v4: Fixed according to comments from Jesse. v2-v3: Addressed comments from v2. Added four patches: 1. To rename HAVE_METADATA_DST 2. iptunnel_xmit starts update. 3. refactore dst code into separate patch. 4. Fix iptunnel_xmit() packet len bug. v1-v2: Brocken down patched further to better align the patches with upstream commit. There is still patch 14 which has code from multiple commits. I can break it down further if it help in review process. Pravin B Shelar (28): datapath: compat: Refactor egress tunnel info datapath: backport: iptunnel: scrub packet in iptunnel_pull_header datapath: backport: tunnels: Remove encapsulation offloads on decap. datapath: backport: net: add dst_cache support datapath: backport: ip_tunnel_core: iptunnel_handle_offloads returns int and doesn't free skb datapath: backport: tunnel: introduce ipv6_tun_rx_dst() datapath: compat: Remove unnecessary iptunnel_xmit() declaration. datapath: backport: ip_tunnel: add support for setting flow label via collect metadata datapath: compat: rename HAVE_METADATA_DST to USE_UPSTREAM_TUNNEL datapath: compat: Update udp_sock_create datapath: compat: Update IPv6 in setup_udp_tunnel_sock() datapath: backport: udp: Add socket based GRO and config datapath: backport: ip_tunnel: Move stats update to iptunnel_xmit() datapath: compat: Prepare tnl-segmentation for ipv6. datapath: compat: Add support for IPv6 UDP tunnel segmentation. datapath: compat: Update Geneve and VxLAN modules. datapath: Add support for IPv6 tunnels. datapath: compat: Use dst-cache for Geneve and VxLAN tunnels. datapath: backport: openvswitch: correct encoding of set tunnel action attributes datapath: compat: get rid of OVS_CB inner header offsets. datapath: backport: geneve: add IPv6 bits to geneve_fill_metadata_dst datapath: backport: udp_offload: Set encapsulation before inner completes. datapath: backport: udp: prevent skbs lingering in tunnel socket queues datapath: backport: geneve: fix tx_errors statistics datapath: backport: ovs/gre,geneve: fix error path when creating an iface datapath: backport: ovs/geneve: fix rtnl notifications on iface deletion datapath: backport: ovs/vxlan: fix rtnl notifications on iface deletion datapath: backport: iptunnel: make rx/tx bytes counters consistent FAQ.md | 3 + NEWS | 2 +- acinclude.m4 | 29 +- datapath/actions.c | 9 +- datapath/datapath.c | 5 +- datapath/datapath.h | 1 - datapath/flow.c | 7 +- datapath/flow.h | 1 + datapath/flow_netlink.c | 150 +- datapath/flow_netlink.h | 5 +- datapath/linux/Modules.mk | 4 + datapath/linux/compat/dev-openvswitch.c | 29 + datapath/linux/compat/dst_cache.c | 169 ++ datapath/linux/compat/geneve.c | 996 ++++++++--- datapath/linux/compat/gre.c | 6 +- datapath/linux/compat/gso.c | 60 +- datapath/linux/compat/gso.h | 79 +- datapath/linux/compat/include/linux/if_ether.h | 6 + datapath/linux/compat/include/linux/if_link.h | 20 + .../linux/compat/include/linux/netdev_features.h | 4 + datapath/linux/compat/include/linux/netdevice.h | 13 + datapath/linux/compat/include/linux/percpu.h | 11 + datapath/linux/compat/include/linux/skbuff.h | 15 + datapath/linux/compat/include/linux/udp.h | 33 + datapath/linux/compat/include/net/dst_cache.h | 104 ++ datapath/linux/compat/include/net/dst_metadata.h | 51 +- datapath/linux/compat/include/net/geneve.h | 5 +- datapath/linux/compat/include/net/gre.h | 7 +- datapath/linux/compat/include/net/ip6_fib.h | 36 + datapath/linux/compat/include/net/ip6_tunnel.h | 9 +- datapath/linux/compat/include/net/ip_tunnels.h | 143 +- datapath/linux/compat/include/net/ipv6.h | 23 + datapath/linux/compat/include/net/lisp.h | 3 + datapath/linux/compat/include/net/rtnetlink.h | 12 +- datapath/linux/compat/include/net/stt.h | 3 + datapath/linux/compat/include/net/udp.h | 1 - datapath/linux/compat/include/net/udp_tunnel.h | 142 +- datapath/linux/compat/include/net/vxlan.h | 288 +++- datapath/linux/compat/ip_gre.c | 91 +- datapath/linux/compat/ip_tunnel.c | 2 +- datapath/linux/compat/ip_tunnels_core.c | 47 +- datapath/linux/compat/lisp.c | 93 +- datapath/linux/compat/skbuff-openvswitch.c | 2 +- datapath/linux/compat/stt.c | 92 +- datapath/linux/compat/udp.c | 12 + datapath/linux/compat/udp_tunnel.c | 199 ++- datapath/linux/compat/utils.c | 28 + datapath/linux/compat/vxlan.c | 1727 ++++++++++---------- datapath/vport-geneve.c | 14 +- datapath/vport-gre.c | 9 +- datapath/vport-lisp.c | 14 +- datapath/vport-netdev.c | 2 +- datapath/vport-stt.c | 14 +- datapath/vport-vxlan.c | 20 +- datapath/vport.c | 78 - datapath/vport.h | 15 +- 56 files changed, 3216 insertions(+), 1727 deletions(-) create mode 100644 datapath/linux/compat/dst_cache.c create mode 100644 datapath/linux/compat/include/linux/udp.h create mode 100644 datapath/linux/compat/include/net/dst_cache.h create mode 100644 datapath/linux/compat/include/net/ip6_fib.h -- 1.9.1 _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev