[ovs-dev] [PATCH v4 00/28] datapath: compat: Add support for IPv6 Geneve and VxLAN tunnels.

Pravin B Shelar pshelar at ovn.org
Fri Jul 8 00:24:15 UTC 2016


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




More information about the dev mailing list