This series of patches is the first half of the backport of the Linux kernel upstream ERSPAN feature support.
The first patch does some cleanup of unsupported kernel code. The remaining patches in the series begin the backport of the actual ERSPAN code. As part of the ERSPAN backport it was necessary to fixup the current out of tree GRE and IP tunneling support by pulling in code from the upstream Linux kernel. There was a great deal of infrastructure missing so much of this patch series is actually devoted to making sure the proper IPV4 tunneling code is pulled in from the upstream kernel. Currently the series only builds on kernels <= 4.9. A future patch will enable builds on kernels greater than 4.9. Greg Rose (1): compat: Remove unsupported kernel compat code William Tu (7): gre: introduce native tunnel support for ERSPAN gre: fix goto statement typo gre: refactor the gre_fb_xmit compat/gre: add collect_md mode ip_gre: check packet length and mtu correctly in erspan tx ip_gre: Refactor the erpsan tunnel code. compat/erspan: refactor existing erspan code Xin Long (3): ip_gre: get key from session_id correctly in erspan_rcv ip_gre: set tunnel hlen properly in erspan_tunnel_init ip_gre: erspan device should keep dst acinclude.m4 | 49 +- datapath/linux/Modules.mk | 3 +- datapath/linux/compat/gre.c | 222 ++-- datapath/linux/compat/include/linux/etherdevice.h | 30 - datapath/linux/compat/include/linux/if_ether.h | 4 + datapath/linux/compat/include/linux/if_vlan.h | 11 - datapath/linux/compat/include/linux/kconfig.h | 8 - datapath/linux/compat/include/linux/kernel.h | 38 - .../linux/compat/include/linux/netdev_features.h | 19 - datapath/linux/compat/include/linux/netdevice.h | 5 - datapath/linux/compat/include/linux/skbuff.h | 36 +- datapath/linux/compat/include/linux/workqueue.h | 4 - datapath/linux/compat/include/net/checksum.h | 6 - datapath/linux/compat/include/net/dst.h | 28 +- datapath/linux/compat/include/net/dst_metadata.h | 23 +- datapath/linux/compat/include/net/erspan.h | 116 ++ datapath/linux/compat/include/net/genetlink.h | 11 - datapath/linux/compat/include/net/gre.h | 13 +- datapath/linux/compat/include/net/ip6_route.h | 23 - datapath/linux/compat/include/net/ip_tunnels.h | 226 +++- datapath/linux/compat/include/net/ipv6.h | 15 - .../include/net/netfilter/nf_conntrack_zones.h | 2 - datapath/linux/compat/include/net/netlink.h | 15 - datapath/linux/compat/include/net/route.h | 105 -- datapath/linux/compat/ip_gre.c | 1103 ++++++++++++++++++-- datapath/linux/compat/ip_tunnel.c | 501 ++++++++- datapath/linux/compat/ip_tunnels_core.c | 41 + datapath/linux/compat/lisp.c | 2 - datapath/linux/compat/stt.c | 6 - datapath/linux/compat/udp_tunnel.c | 2 - datapath/linux/compat/utils.c | 22 - 31 files changed, 2046 insertions(+), 643 deletions(-) create mode 100644 datapath/linux/compat/include/net/erspan.h -- 1.8.3.1 _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
