From: Joe Stringer <joestrin...@nicira.com>

This series backports the support for connection tracking introduced in
Linux 4.3, allowing the kernel module in the tree to support this feature
on kernels 3.10 and newer.

This series applies on top of the lwtunnel backport series v7 from Pravin.
For ease of review, I have made a combined branch available here:

https://github.com/joestringer/openvswitch/tree/submit/ct_backport_v2

v2:
- Fixed nf_conntrack_ftp module refcount issue
- Fix template free on backported kernels
- Fixed build on RHEL7.2 kernels
- Fixed various compiler warnings
- Dropped testsuite patches that were applied
- Rebase

Joe Stringer (20):
  compat: Backport conntrack zones headers.
  compat: Backport nf_ct_tmpl_alloc().
  compat: Backport nf_connlabels_{get,put}().
  compat: Backport 'dst' functions.
  compat: Backport prandom_u32_max().
  compat: Backport dev_recursion_level().
  compat: Backport ip_skb_dst_mtu().
  compat: Wrap IPv4 fragmentation.
  compat: Backport IPv4 reassembly.
  compat: Backport IPv6 fragmentation.
  compat: Backport IPv6 reassembly.
  datapath: Move MASKED* macros to datapath.h
  datapath: Serialize acts with original netlink len
  datapath: Add conntrack action
  datapath: Allow matching on conntrack mark
  datapath: Allow matching on conntrack label
  datapath: Allow attaching helpers to ct action
  datapath: Backport conntrack fixes.
  datapath: Scrub skb between namespaces
  FAQ: Document kernel feature support.

 FAQ.md                                             |  23 +
 acinclude.m4                                       |  23 +
 datapath/Modules.mk                                |   2 +
 datapath/actions.c                                 | 250 ++++++-
 datapath/compat.h                                  |  41 ++
 datapath/conntrack.c                               | 798 +++++++++++++++++++++
 datapath/conntrack.h                               |  94 +++
 datapath/datapath.c                                |  95 ++-
 datapath/datapath.h                                |  12 +
 datapath/flow.c                                    |   6 +-
 datapath/flow.h                                    |  11 +-
 datapath/flow_netlink.c                            | 127 +++-
 datapath/flow_netlink.h                            |  13 +-
 datapath/linux/Modules.mk                          |  13 +
 datapath/linux/compat/include/linux/netdevice.h    |   4 +
 .../linux/compat/include/linux/netfilter_ipv6.h    |  39 +
 datapath/linux/compat/include/linux/openvswitch.h  |   3 +-
 datapath/linux/compat/include/linux/percpu.h       |   6 +
 datapath/linux/compat/include/linux/random.h       |   7 +
 datapath/linux/compat/include/net/dst.h            |  78 ++
 datapath/linux/compat/include/net/inet_frag.h      |  57 ++
 datapath/linux/compat/include/net/inetpeer.h       |  16 +
 datapath/linux/compat/include/net/ip.h             | 106 +++
 datapath/linux/compat/include/net/ip6_route.h      |  17 +-
 datapath/linux/compat/include/net/ipv6.h           |   7 +
 .../include/net/netfilter/ipv6/nf_defrag_ipv6.h    |  32 +
 .../include/net/netfilter/nf_conntrack_core.h      |  44 ++
 .../include/net/netfilter/nf_conntrack_expect.h    |  21 +
 .../include/net/netfilter/nf_conntrack_labels.h    |  41 ++
 .../include/net/netfilter/nf_conntrack_zones.h     | 103 +++
 datapath/linux/compat/include/net/vrf.h            |  26 +
 datapath/linux/compat/inet_fragment.c              | 560 +++++++++++++++
 datapath/linux/compat/ip6_output.c                 | 468 ++++++++++++
 datapath/linux/compat/ip_fragment.c                | 749 +++++++++++++++++++
 datapath/linux/compat/nf_conntrack_core.c          |  13 +
 datapath/linux/compat/nf_conntrack_reasm.c         | 654 +++++++++++++++++
 datapath/vport.c                                   |  10 +
 37 files changed, 4476 insertions(+), 93 deletions(-)
 create mode 100644 datapath/conntrack.c
 create mode 100644 datapath/conntrack.h
 create mode 100644 datapath/linux/compat/include/linux/netfilter_ipv6.h
 create mode 100644 datapath/linux/compat/include/net/inetpeer.h
 create mode 100644 
datapath/linux/compat/include/net/netfilter/ipv6/nf_defrag_ipv6.h
 create mode 100644 
datapath/linux/compat/include/net/netfilter/nf_conntrack_core.h
 create mode 100644 
datapath/linux/compat/include/net/netfilter/nf_conntrack_expect.h
 create mode 100644 
datapath/linux/compat/include/net/netfilter/nf_conntrack_labels.h
 create mode 100644 
datapath/linux/compat/include/net/netfilter/nf_conntrack_zones.h
 create mode 100644 datapath/linux/compat/include/net/vrf.h
 create mode 100644 datapath/linux/compat/inet_fragment.c
 create mode 100644 datapath/linux/compat/ip6_output.c
 create mode 100644 datapath/linux/compat/ip_fragment.c
 create mode 100644 datapath/linux/compat/nf_conntrack_core.c
 create mode 100644 datapath/linux/compat/nf_conntrack_reasm.c

-- 
2.1.4

_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to