It is time to remove support for the ovs kernel driver and push
towards use of the upstream linux openvswitch kernel driver
in it's place [1].

1.  https://mail.openvswitch.org/pipermail/ovs-dev/2022-april/393292.html

Changes in V2:
* Removed the Linux datapath and fixed up various Makefiles to adjust
* Moved openvswitch.h from datapath/linux/compat/include to include/linux
  and fixed up the Makefiles to adjust
* Removed further instances in utilities and auxiliary files where the
  --with-linux configuration command was still being used.
* Changed order of patches to (hopefully) fix up some robot auto-test
  errors

Changes in V3:
* Squashed the two patches removing rhel specs due to interdependence
  between the two that caused build errors between application of each
  of the patches
* Moved the changes to acinclude.m4 towards the end of the series

Changes in V4:
* Changed up the order of the patches again to fix robot errors
* Added back most of the tests in .github/workflows/build-and-test.yml
* Removed xenserver and related documentation, test scripts and makefile
  dependencies

Changes in V5:
* Squashed two patches from previous series into a single patch. There
  was no good reason to separate changes to auxiliary and utilities
  from the removal of the Linux datapath and the two patches had a
  tricky dependency between them.  Best to combine them.
* Various cleanups, title changes and amended commit messages as
  suggested by David Marchand in his reviews.
* Drops the xenserver removal patch - this patch causes 'make  check'
  failures and there is no reason why it can't  be submitted separately.
* With these changes the github workflows build and test work without
  errors:
https://github.com/gvrose8192/ovs-experimental/runs/7330169845?check_suite_focus=true

Still to do:
* Submit the patch to remove xenserver separately once I figure out why
  the removal causes 'make check' errors for a few interface reconfiguration
  tests.

Greg Rose (6):
  ci: Stop building OVS kernel module.
  rhel: Stop packaging OVS kernel module.
  tests: Remove support for check-kmod test.
  Make: Remove the Linux datapath.
  acinclude.m4: Remove support for building the OVS kernel module.
  Documentation: Remove kernel module documentation.

 .ci/linux-build.sh                            |   33 +-
 .github/workflows/build-and-test.yml          |   20 -
 Documentation/faq/releases.rst                |    4 +-
 .../contributing/backporting-patches.rst      |    7 +
 Documentation/intro/install/fedora.rst        |   24 -
 Documentation/intro/install/general.rst       |   63 -
 Documentation/intro/install/rhel.rst          |   18 -
 Documentation/topics/testing.rst              |    7 -
 Makefile.am                                   |   17 +-
 Vagrantfile                                   |   12 +-
 acinclude.m4                                  |  810 +---
 build-aux/initial-tab-allowed-files           |    1 -
 configure.ac                                  |    6 +-
 datapath-windows/include/automake.mk          |    2 +-
 datapath/.gitignore                           |    7 -
 datapath/Makefile.am                          |   60 -
 datapath/Modules.mk                           |   58 -
 datapath/actions.c                            | 1587 --------
 datapath/compat.h                             |   92 -
 datapath/conntrack.c                          | 2413 -----------
 datapath/conntrack.h                          |  113 -
 datapath/datapath.c                           | 2707 -------------
 datapath/datapath.h                           |  283 --
 datapath/dp_notify.c                          |  102 -
 datapath/flow.c                               |  972 -----
 datapath/flow.h                               |  297 --
 datapath/flow_netlink.c                       | 3519 -----------------
 datapath/flow_netlink.h                       |   85 -
 datapath/flow_table.c                         |  988 -----
 datapath/flow_table.h                         |  102 -
 datapath/linux/.gitignore                     |    8 -
 datapath/linux/Kbuild.in                      |   27 -
 datapath/linux/Makefile.in                    |    9 -
 datapath/linux/Makefile.main.in               |  107 -
 datapath/linux/Modules.mk                     |  123 -
 .../compat/build-aux/export-check-allow-list  |    1 -
 datapath/linux/compat/dev-openvswitch.c       |   83 -
 datapath/linux/compat/dst_cache.c             |  173 -
 datapath/linux/compat/exthdrs_core.c          |  129 -
 datapath/linux/compat/genetlink-openvswitch.c |   55 -
 datapath/linux/compat/geneve.c                | 1854 ---------
 datapath/linux/compat/gre.c                   |  239 --
 datapath/linux/compat/gso.c                   |  317 --
 datapath/linux/compat/gso.h                   |  214 -
 datapath/linux/compat/include/linux/bug.h     |   13 -
 datapath/linux/compat/include/linux/cache.h   |   23 -
 .../linux/compat/include/linux/compiler-gcc.h |   20 -
 .../linux/compat/include/linux/compiler.h     |   26 -
 datapath/linux/compat/include/linux/cpumask.h |   11 -
 datapath/linux/compat/include/linux/err.h     |   37 -
 .../linux/compat/include/linux/etherdevice.h  |   62 -
 .../linux/compat/include/linux/genetlink.h    |   16 -
 datapath/linux/compat/include/linux/if.h      |    6 -
 .../linux/compat/include/linux/if_ether.h     |   39 -
 datapath/linux/compat/include/linux/if_link.h |  171 -
 datapath/linux/compat/include/linux/if_vlan.h |  306 --
 datapath/linux/compat/include/linux/in.h      |   56 -
 datapath/linux/compat/include/linux/jiffies.h |   34 -
 datapath/linux/compat/include/linux/kconfig.h |   49 -
 datapath/linux/compat/include/linux/kernel.h  |   39 -
 datapath/linux/compat/include/linux/list.h    |   31 -
 datapath/linux/compat/include/linux/mm.h      |   44 -
 datapath/linux/compat/include/linux/mpls.h    |   40 -
 datapath/linux/compat/include/linux/net.h     |   62 -
 .../compat/include/linux/netdev_features.h    |   77 -
 .../linux/compat/include/linux/netdevice.h    |  336 --
 .../linux/compat/include/linux/netfilter.h    |   19 -
 .../compat/include/linux/netfilter_ipv6.h     |   32 -
 datapath/linux/compat/include/linux/netlink.h |   19 -
 .../linux/compat/include/linux/overflow.h     |  313 --
 datapath/linux/compat/include/linux/percpu.h  |   33 -
 datapath/linux/compat/include/linux/random.h  |   17 -
 datapath/linux/compat/include/linux/rbtree.h  |   19 -
 datapath/linux/compat/include/linux/rculist.h |   39 -
 .../linux/compat/include/linux/rcupdate.h     |   41 -
 .../compat/include/linux/reciprocal_div.h     |   37 -
 .../linux/compat/include/linux/rtnetlink.h    |   41 -
 datapath/linux/compat/include/linux/skbuff.h  |  491 ---
 .../linux/compat/include/linux/static_key.h   |   86 -
 datapath/linux/compat/include/linux/stddef.h  |   15 -
 .../linux/compat/include/linux/timekeeping.h  |   11 -
 datapath/linux/compat/include/linux/types.h   |   11 -
 .../compat/include/linux/u64_stats_sync.h     |  155 -
 datapath/linux/compat/include/linux/udp.h     |   33 -
 .../linux/compat/include/linux/workqueue.h    |    6 -
 datapath/linux/compat/include/net/checksum.h  |   39 -
 datapath/linux/compat/include/net/dst.h       |   77 -
 datapath/linux/compat/include/net/dst_cache.h |  114 -
 .../linux/compat/include/net/dst_metadata.h   |  269 --
 datapath/linux/compat/include/net/erspan.h    |  342 --
 datapath/linux/compat/include/net/genetlink.h |  136 -
 datapath/linux/compat/include/net/geneve.h    |  107 -
 datapath/linux/compat/include/net/gre.h       |  191 -
 datapath/linux/compat/include/net/inet_ecn.h  |   59 -
 datapath/linux/compat/include/net/inet_frag.h |   83 -
 datapath/linux/compat/include/net/inetpeer.h  |   16 -
 datapath/linux/compat/include/net/ip.h        |  143 -
 datapath/linux/compat/include/net/ip6_fib.h   |   43 -
 datapath/linux/compat/include/net/ip6_route.h |   16 -
 .../linux/compat/include/net/ip6_tunnel.h     |  208 -
 .../linux/compat/include/net/ip_tunnels.h     |  513 ---
 datapath/linux/compat/include/net/ipv6.h      |   88 -
 datapath/linux/compat/include/net/ipv6_frag.h |    8 -
 datapath/linux/compat/include/net/lisp.h      |   27 -
 datapath/linux/compat/include/net/mpls.h      |   62 -
 .../linux/compat/include/net/net_namespace.h  |   33 -
 .../net/netfilter/ipv6/nf_defrag_ipv6.h       |   42 -
 .../include/net/netfilter/nf_conntrack.h      |   33 -
 .../include/net/netfilter/nf_conntrack_core.h |  137 -
 .../net/netfilter/nf_conntrack_count.h        |   54 -
 .../net/netfilter/nf_conntrack_expect.h       |   21 -
 .../net/netfilter/nf_conntrack_helper.h       |   39 -
 .../net/netfilter/nf_conntrack_labels.h       |  107 -
 .../net/netfilter/nf_conntrack_seqadj.h       |   30 -
 .../net/netfilter/nf_conntrack_timeout.h      |   34 -
 .../net/netfilter/nf_conntrack_zones.h        |  101 -
 .../compat/include/net/netfilter/nf_nat.h     |   44 -
 datapath/linux/compat/include/net/netlink.h   |  185 -
 datapath/linux/compat/include/net/nsh.h       |  313 --
 datapath/linux/compat/include/net/protocol.h  |   19 -
 datapath/linux/compat/include/net/route.h     |    6 -
 datapath/linux/compat/include/net/rtnetlink.h |   44 -
 .../linux/compat/include/net/sctp/checksum.h  |   25 -
 datapath/linux/compat/include/net/sock.h      |   13 -
 datapath/linux/compat/include/net/stt.h       |   70 -
 datapath/linux/compat/include/net/tun_proto.h |   49 -
 datapath/linux/compat/include/net/udp.h       |   62 -
 .../linux/compat/include/net/udp_tunnel.h     |  208 -
 datapath/linux/compat/include/net/vrf.h       |   26 -
 datapath/linux/compat/include/net/vxlan.h     |  444 ---
 .../compat/include/uapi/linux/netfilter.h     |   14 -
 datapath/linux/compat/inet_fragment.c         |   31 -
 datapath/linux/compat/ip6_gre.c               | 2746 -------------
 datapath/linux/compat/ip6_output.c            |  470 ---
 datapath/linux/compat/ip6_tunnel.c            | 2213 -----------
 datapath/linux/compat/ip_fragment.c           |  831 ----
 datapath/linux/compat/ip_gre.c                | 1450 -------
 datapath/linux/compat/ip_output.c             |  418 --
 datapath/linux/compat/ip_tunnel.c             |  776 ----
 datapath/linux/compat/ip_tunnels_core.c       |  330 --
 datapath/linux/compat/lisp.c                  |  816 ----
 datapath/linux/compat/netdevice.c             |  167 -
 datapath/linux/compat/nf_conncount.c          |  621 ---
 datapath/linux/compat/nf_conntrack_core.c     |   13 -
 datapath/linux/compat/nf_conntrack_proto.c    |  114 -
 datapath/linux/compat/nf_conntrack_reasm.c    |  740 ----
 datapath/linux/compat/nf_conntrack_timeout.c  |  102 -
 datapath/linux/compat/reciprocal_div.c        |   27 -
 datapath/linux/compat/skbuff-openvswitch.c    |  310 --
 datapath/linux/compat/socket.c                |   32 -
 datapath/linux/compat/stt.c                   | 2129 ----------
 datapath/linux/compat/udp.c                   |   46 -
 datapath/linux/compat/udp_tunnel.c            |  292 --
 datapath/linux/compat/utils.c                 |  112 -
 datapath/linux/compat/vxlan.c                 | 2382 -----------
 datapath/meter.c                              |  639 ---
 datapath/meter.h                              |   54 -
 datapath/nsh.c                                |  142 -
 datapath/vport-geneve.c                       |  147 -
 datapath/vport-gre.c                          |  119 -
 datapath/vport-internal_dev.c                 |  340 --
 datapath/vport-internal_dev.h                 |   30 -
 datapath/vport-lisp.c                         |  146 -
 datapath/vport-netdev.c                       |  230 --
 datapath/vport-netdev.h                       |   39 -
 datapath/vport-stt.c                          |  149 -
 datapath/vport-vxlan.c                        |  216 -
 datapath/vport.c                              |  614 ---
 datapath/vport.h                              |  205 -
 include/automake.mk                           |    2 +-
 include/linux/automake.mk                     |    1 +
 .../include => include}/linux/openvswitch.h   |    0
 poc/playbook-centos-builder.yml               |    8 -
 poc/playbook-fedora-builder.yml               |   16 -
 rhel/.gitignore                               |    4 -
 rhel/automake.mk                              |   23 -
 rhel/kmod-openvswitch-rhel6.spec.in           |  123 -
 rhel/openvswitch-dkms.spec.in                 |  103 -
 rhel/openvswitch-fedora.spec.in               |    5 +-
 rhel/openvswitch-kmod-fedora.spec.in          |  152 -
 rhel/openvswitch.spec.in                      |    4 +-
 ...are_openvswitch_scripts_ovs-kmod-manage.sh |  237 --
 tests/automake.mk                             |    6 -
 .../docker/debian/build-kernel-modules.sh     |   13 +-
 utilities/ovs-dev.py                          |   19 +-
 185 files changed, 33 insertions(+), 46279 deletions(-)
 delete mode 100644 datapath/.gitignore
 delete mode 100644 datapath/Makefile.am
 delete mode 100644 datapath/Modules.mk
 delete mode 100644 datapath/actions.c
 delete mode 100644 datapath/compat.h
 delete mode 100644 datapath/conntrack.c
 delete mode 100644 datapath/conntrack.h
 delete mode 100644 datapath/datapath.c
 delete mode 100644 datapath/datapath.h
 delete mode 100644 datapath/dp_notify.c
 delete mode 100644 datapath/flow.c
 delete mode 100644 datapath/flow.h
 delete mode 100644 datapath/flow_netlink.c
 delete mode 100644 datapath/flow_netlink.h
 delete mode 100644 datapath/flow_table.c
 delete mode 100644 datapath/flow_table.h
 delete mode 100644 datapath/linux/.gitignore
 delete mode 100644 datapath/linux/Kbuild.in
 delete mode 100644 datapath/linux/Makefile.in
 delete mode 100644 datapath/linux/Makefile.main.in
 delete mode 100644 datapath/linux/Modules.mk
 delete mode 100644 datapath/linux/compat/build-aux/export-check-allow-list
 delete mode 100644 datapath/linux/compat/dev-openvswitch.c
 delete mode 100644 datapath/linux/compat/dst_cache.c
 delete mode 100644 datapath/linux/compat/exthdrs_core.c
 delete mode 100644 datapath/linux/compat/genetlink-openvswitch.c
 delete mode 100644 datapath/linux/compat/geneve.c
 delete mode 100644 datapath/linux/compat/gre.c
 delete mode 100644 datapath/linux/compat/gso.c
 delete mode 100644 datapath/linux/compat/gso.h
 delete mode 100644 datapath/linux/compat/include/linux/bug.h
 delete mode 100644 datapath/linux/compat/include/linux/cache.h
 delete mode 100644 datapath/linux/compat/include/linux/compiler-gcc.h
 delete mode 100644 datapath/linux/compat/include/linux/compiler.h
 delete mode 100644 datapath/linux/compat/include/linux/cpumask.h
 delete mode 100644 datapath/linux/compat/include/linux/err.h
 delete mode 100644 datapath/linux/compat/include/linux/etherdevice.h
 delete mode 100644 datapath/linux/compat/include/linux/genetlink.h
 delete mode 100644 datapath/linux/compat/include/linux/if.h
 delete mode 100644 datapath/linux/compat/include/linux/if_ether.h
 delete mode 100644 datapath/linux/compat/include/linux/if_link.h
 delete mode 100644 datapath/linux/compat/include/linux/if_vlan.h
 delete mode 100644 datapath/linux/compat/include/linux/in.h
 delete mode 100644 datapath/linux/compat/include/linux/jiffies.h
 delete mode 100644 datapath/linux/compat/include/linux/kconfig.h
 delete mode 100644 datapath/linux/compat/include/linux/kernel.h
 delete mode 100644 datapath/linux/compat/include/linux/list.h
 delete mode 100644 datapath/linux/compat/include/linux/mm.h
 delete mode 100644 datapath/linux/compat/include/linux/mpls.h
 delete mode 100644 datapath/linux/compat/include/linux/net.h
 delete mode 100644 datapath/linux/compat/include/linux/netdev_features.h
 delete mode 100644 datapath/linux/compat/include/linux/netdevice.h
 delete mode 100644 datapath/linux/compat/include/linux/netfilter.h
 delete mode 100644 datapath/linux/compat/include/linux/netfilter_ipv6.h
 delete mode 100644 datapath/linux/compat/include/linux/netlink.h
 delete mode 100644 datapath/linux/compat/include/linux/overflow.h
 delete mode 100644 datapath/linux/compat/include/linux/percpu.h
 delete mode 100644 datapath/linux/compat/include/linux/random.h
 delete mode 100644 datapath/linux/compat/include/linux/rbtree.h
 delete mode 100644 datapath/linux/compat/include/linux/rculist.h
 delete mode 100644 datapath/linux/compat/include/linux/rcupdate.h
 delete mode 100644 datapath/linux/compat/include/linux/reciprocal_div.h
 delete mode 100644 datapath/linux/compat/include/linux/rtnetlink.h
 delete mode 100644 datapath/linux/compat/include/linux/skbuff.h
 delete mode 100644 datapath/linux/compat/include/linux/static_key.h
 delete mode 100644 datapath/linux/compat/include/linux/stddef.h
 delete mode 100644 datapath/linux/compat/include/linux/timekeeping.h
 delete mode 100644 datapath/linux/compat/include/linux/types.h
 delete mode 100644 datapath/linux/compat/include/linux/u64_stats_sync.h
 delete mode 100644 datapath/linux/compat/include/linux/udp.h
 delete mode 100644 datapath/linux/compat/include/linux/workqueue.h
 delete mode 100644 datapath/linux/compat/include/net/checksum.h
 delete mode 100644 datapath/linux/compat/include/net/dst.h
 delete mode 100644 datapath/linux/compat/include/net/dst_cache.h
 delete mode 100644 datapath/linux/compat/include/net/dst_metadata.h
 delete mode 100644 datapath/linux/compat/include/net/erspan.h
 delete mode 100644 datapath/linux/compat/include/net/genetlink.h
 delete mode 100644 datapath/linux/compat/include/net/geneve.h
 delete mode 100644 datapath/linux/compat/include/net/gre.h
 delete mode 100644 datapath/linux/compat/include/net/inet_ecn.h
 delete mode 100644 datapath/linux/compat/include/net/inet_frag.h
 delete mode 100644 datapath/linux/compat/include/net/inetpeer.h
 delete mode 100644 datapath/linux/compat/include/net/ip.h
 delete mode 100644 datapath/linux/compat/include/net/ip6_fib.h
 delete mode 100644 datapath/linux/compat/include/net/ip6_route.h
 delete mode 100644 datapath/linux/compat/include/net/ip6_tunnel.h
 delete mode 100644 datapath/linux/compat/include/net/ip_tunnels.h
 delete mode 100644 datapath/linux/compat/include/net/ipv6.h
 delete mode 100644 datapath/linux/compat/include/net/ipv6_frag.h
 delete mode 100644 datapath/linux/compat/include/net/lisp.h
 delete mode 100644 datapath/linux/compat/include/net/mpls.h
 delete mode 100644 datapath/linux/compat/include/net/net_namespace.h
 delete mode 100644 
datapath/linux/compat/include/net/netfilter/ipv6/nf_defrag_ipv6.h
 delete mode 100644 datapath/linux/compat/include/net/netfilter/nf_conntrack.h
 delete mode 100644 
datapath/linux/compat/include/net/netfilter/nf_conntrack_core.h
 delete mode 100644 
datapath/linux/compat/include/net/netfilter/nf_conntrack_count.h
 delete mode 100644 
datapath/linux/compat/include/net/netfilter/nf_conntrack_expect.h
 delete mode 100644 
datapath/linux/compat/include/net/netfilter/nf_conntrack_helper.h
 delete mode 100644 
datapath/linux/compat/include/net/netfilter/nf_conntrack_labels.h
 delete mode 100644 
datapath/linux/compat/include/net/netfilter/nf_conntrack_seqadj.h
 delete mode 100644 
datapath/linux/compat/include/net/netfilter/nf_conntrack_timeout.h
 delete mode 100644 
datapath/linux/compat/include/net/netfilter/nf_conntrack_zones.h
 delete mode 100644 datapath/linux/compat/include/net/netfilter/nf_nat.h
 delete mode 100644 datapath/linux/compat/include/net/netlink.h
 delete mode 100644 datapath/linux/compat/include/net/nsh.h
 delete mode 100644 datapath/linux/compat/include/net/protocol.h
 delete mode 100644 datapath/linux/compat/include/net/route.h
 delete mode 100644 datapath/linux/compat/include/net/rtnetlink.h
 delete mode 100644 datapath/linux/compat/include/net/sctp/checksum.h
 delete mode 100644 datapath/linux/compat/include/net/sock.h
 delete mode 100644 datapath/linux/compat/include/net/stt.h
 delete mode 100644 datapath/linux/compat/include/net/tun_proto.h
 delete mode 100644 datapath/linux/compat/include/net/udp.h
 delete mode 100644 datapath/linux/compat/include/net/udp_tunnel.h
 delete mode 100644 datapath/linux/compat/include/net/vrf.h
 delete mode 100644 datapath/linux/compat/include/net/vxlan.h
 delete mode 100644 datapath/linux/compat/include/uapi/linux/netfilter.h
 delete mode 100644 datapath/linux/compat/inet_fragment.c
 delete mode 100644 datapath/linux/compat/ip6_gre.c
 delete mode 100644 datapath/linux/compat/ip6_output.c
 delete mode 100644 datapath/linux/compat/ip6_tunnel.c
 delete mode 100644 datapath/linux/compat/ip_fragment.c
 delete mode 100644 datapath/linux/compat/ip_gre.c
 delete mode 100644 datapath/linux/compat/ip_output.c
 delete mode 100644 datapath/linux/compat/ip_tunnel.c
 delete mode 100644 datapath/linux/compat/ip_tunnels_core.c
 delete mode 100644 datapath/linux/compat/lisp.c
 delete mode 100644 datapath/linux/compat/netdevice.c
 delete mode 100644 datapath/linux/compat/nf_conncount.c
 delete mode 100644 datapath/linux/compat/nf_conntrack_core.c
 delete mode 100644 datapath/linux/compat/nf_conntrack_proto.c
 delete mode 100644 datapath/linux/compat/nf_conntrack_reasm.c
 delete mode 100644 datapath/linux/compat/nf_conntrack_timeout.c
 delete mode 100644 datapath/linux/compat/reciprocal_div.c
 delete mode 100644 datapath/linux/compat/skbuff-openvswitch.c
 delete mode 100644 datapath/linux/compat/socket.c
 delete mode 100644 datapath/linux/compat/stt.c
 delete mode 100644 datapath/linux/compat/udp.c
 delete mode 100644 datapath/linux/compat/udp_tunnel.c
 delete mode 100644 datapath/linux/compat/utils.c
 delete mode 100644 datapath/linux/compat/vxlan.c
 delete mode 100644 datapath/meter.c
 delete mode 100644 datapath/meter.h
 delete mode 100644 datapath/nsh.c
 delete mode 100644 datapath/vport-geneve.c
 delete mode 100644 datapath/vport-gre.c
 delete mode 100644 datapath/vport-internal_dev.c
 delete mode 100644 datapath/vport-internal_dev.h
 delete mode 100644 datapath/vport-lisp.c
 delete mode 100644 datapath/vport-netdev.c
 delete mode 100644 datapath/vport-netdev.h
 delete mode 100644 datapath/vport-stt.c
 delete mode 100644 datapath/vport-vxlan.c
 delete mode 100644 datapath/vport.c
 delete mode 100644 datapath/vport.h
 rename {datapath/linux/compat/include => include}/linux/openvswitch.h (100%)
 delete mode 100644 rhel/kmod-openvswitch-rhel6.spec.in
 delete mode 100644 rhel/openvswitch-dkms.spec.in
 delete mode 100644 rhel/openvswitch-kmod-fedora.spec.in
 delete mode 100644 rhel/usr_share_openvswitch_scripts_ovs-kmod-manage.sh

-- 
2.17.1

_______________________________________________
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to