Commit graph

37 commits

Author SHA1 Message Date
Yousong Zhou
26291bba4e openvswitch: pass KERNEL_MAKE_FLAGS for reproducible build
Reported-by: Paul Spooren <mail@aparcar.org>
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2020-05-27 16:38:56 +08:00
Yousong Zhou
931ff98633 openvswitch: rework disabling docs build
This is needed since openvswitch 2.13 commit 2a97891eb23b
("Documentation: Work with sphinx-build for Python 3 also.")

The 4th patch was also reworked to serve as another guard

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2020-05-27 16:38:56 +08:00
Yousong Zhou
bf4f584e75 openvswitch: bump to version 2.13.0
python2 library is now removed as the transition has been done by the
upstream project

OVN is now a separate project released with its own release plan and
it's not included within openvswitch starting with ovs 2.13.

openvswitch.mk is split out from the main Makefile for adding ovn
packages back in following commits.

The following two patches are already included in 2.13

 - ovsdb-idlc-fix-dict-change-during-iteration.patch
 - compat-Include-confirm_neigh-parameter-if-needed.patch

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2020-03-23 16:07:24 +08:00
Yousong Zhou
e9d6414437 openvswitch: fix PIE build against 4.14 kernel
Reported-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
Ref: https://github.com/openwrt/packages/pull/11567
2020-03-16 15:26:17 +08:00
Yousong Zhou
7cc9c437be openvswitch: fix building failure caused by dst_ops api change
Ref: https://github.com/openwrt/packages/issues/10961
Reported-by: Sven Roederer <devel-sven@geroedel.de>
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2020-01-08 11:54:46 +08:00
Josef Schlehofer
00eda4bb0d openvswitch: backport patch to fix compilation
Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
2019-10-25 11:15:50 +08:00
Yousong Zhou
feacaa5f80 openvswitch: bump to version 2.12.0
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2019-09-16 07:59:31 +00:00
Yousong Zhou
3680e969b1 openvswitch: fix compilation of intree datapath kmod
Reference: https://github.com/openwrt/packages/issues/8548#issuecomment-488871090
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2019-05-03 17:53:03 +00:00
Yousong Zhou
48769259a8 openvswitch: bump to version 2.11.0
The following patches are in upstream now

	0100-netdev-linux-Use-unsigned-int-for-ifi_flags.patch
	0103-ovs-ctl-fix-setting-hostname.patch
	0106-ovs-save-compatible-with-busybox-ip-command.patch
	0107-datapath-use-KARCH-when-building-linux-datapath-modu.patch

As for 0001-musl-compatibility.patch, the net/if_packet.h part does not
apply anymore.  And musl is not relevant as we use libatomic from gcc

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2019-03-04 03:35:19 +00:00
Yousong Zhou
f2bf8d3d4c openvswitch: provide in-tree kmod builds
Open vSwitch 2.10 introduces meters support to the kernel datapath.  In
upstream Linux, the feature is only available since 4.15

This is mainly for make the newly introduced meter features in linux
kernel datapath more easily available

	root@OpenWrt:/# ovs-ofctl -OOpenFlow13 meter-features br0
	OFPST_METER_FEATURES reply (OF1.3) (xid=0x2):
	max_meter:4294967295 max_bands:1 max_color:0
	band_types: drop
	capabilities: kbps pktps burst stats
	root@OpenWrt:/#

Size comparison between in-tree and upstreamed modules are attached

	  2800 Sep  5 08:47 ipkg-mips_24kc/kmod-openvswitch-geneve-intree/lib/modules/4.14.67/vport-geneve.ko
	  2736 Sep  5 08:47 ipkg-mips_24kc/kmod-openvswitch-geneve/lib/modules/4.14.67/vport-geneve.ko
	  2596 Sep  5 08:47 ipkg-mips_24kc/kmod-openvswitch-gre-intree/lib/modules/4.14.67/vport-gre.ko
	  2536 Sep  5 08:47 ipkg-mips_24kc/kmod-openvswitch-gre/lib/modules/4.14.67/vport-gre.ko
	288320 Sep  5 08:47 ipkg-mips_24kc/kmod-openvswitch-intree/lib/modules/4.14.67/openvswitch.ko
	118984 Sep  5 08:47 ipkg-mips_24kc/kmod-openvswitch/lib/modules/4.14.67/openvswitch.ko
	  2792 Sep  5 08:47 ipkg-mips_24kc/kmod-openvswitch-lisp-intree/lib/modules/4.14.67/vport-lisp.ko
	  2788 Sep  5 08:47 ipkg-mips_24kc/kmod-openvswitch-stt-intree/lib/modules/4.14.67/vport-stt.ko
	  3668 Sep  5 08:47 ipkg-mips_24kc/kmod-openvswitch-vxlan-intree/lib/modules/4.14.67/vport-vxlan.ko
	  3400 Sep  5 08:47 ipkg-mips_24kc/kmod-openvswitch-vxlan/lib/modules/4.14.67/vport-vxlan.ko

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-09-09 09:51:14 +08:00
Yousong Zhou
76e57b333d openvswitch: multiple fixes for 2.10
- initscript: skip when ctl scripts are absent.  When only ovs is
   installed, this will quash error messages of ovn-ctl not found when
   invoking stop
 - openvswitch-common: include ovs-kmod-ctl
 - patches: ovs-save: compatible with busybox ip command

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-09-09 09:51:14 +08:00
Yousong Zhou
1b485efbcb openvswitch: bump to version 2.10.0
- Rebased the python target/host separation patch
 - Dropped the now-in-upstream openssl-1.1 compat patch
 - Added a patch to disable tests/

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-08-21 13:51:37 +00:00
Eneas U de Queiroz
10345fbba5 openvswitch: add openssl-1.1 compatibility
Do not call library initialization when compiling with openssl 1.1.

The package generates the C source files for its DH parameters at
compile time using the host installed openssl.  This patch adds a DH
source, using the same parameters, compatible with openssl 1.0 and 1.1.

Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
2018-06-07 07:27:57 +08:00
Yousong Zhou
c2f788f054 openvswitch: rework packaging
New scheme mainly provides three packages: openvswitch,
openvswitch-ovn-north, openvswitch-ovn-controller.  These should fit
most usage scenarios.  Other subpackages like openvswitch-libXXX
etc.  are there for dependency management and are hidden from the
menu.

Many python and shell scripts are removed in this revision.  Most of
them cannot run out of box at all for lack of dependencies.  Others
being legacy ones are not that useful now.  Add them back at later time
when real need appears

Below are a simple listing of additions

 - initscript now incorporate also ovn north and controller support
 - ovn-ctl and ovs-ctl can be invoked directly from within $PATH

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-06-04 11:27:54 +08:00
Yousong Zhou
fa958f4a99 openvswitch: bump to version 2.8.2
Changes since 2.8.2 as recorded in NEWS-2.8.2

    - NSH implementation now conforms to latest draft (draft-ietf-sfc-nsh-28).
    - Bug fixes

0006-adapt-ovs-scripts.patch was splited into two separate patches as
the original patch does not apply against 2.8.2 anymore.  Other patches
are just re-numbered without actual function change

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-03-14 22:40:30 +08:00
Yousong Zhou
f53d452bd1 openvswitch: python: rework host and target dependency
Open vSwitch needs to run python on build machine to make build-time
required files.  python-six library is only required by the openvswitch
python library on target machine, not a build dependency.

We override host PYTHONPATH by overriding it in MAKE_VARS.  This way we
can remove 0003-override-pythonpath-via-make-vars.patch

This also fixes shebang wrongly pointing to python on host

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-03-06 00:29:53 +08:00
Yousong Zhou
4feb43bf43 openvswitch: remove dependency on SUPPORTED_KERNELS
Quote from Open vSwitch FAQ.md

    Open vSwitch userspace should also work with the Linux kernel module
    built into Linux 3.3 and later.

    Open vSwitch userspace is not sensitive to the Linux kernel version. It
    should build against almost any kernel, certainly against 2.6.32 and
    later.

The SUPPORTED_KERNEL dependency for openvswitch kernel module only
makes sense when we are building it from the ovs release tarballs
against mainline kernels.  Now that we are using the module from vanilla
kernel itself, the dependency does not exist anymore

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-03-06 00:29:53 +08:00
Alexandru Ardelean
1a53301cd1 openvswitch: upgrade to 2.8.1 ; package more stuff from the OVS build
I should have packaged the OVN stuff, VTEP and what-not
earlier, but was not inspired to do this earlier.

I made some time now to package those parts.

Disabling flake8 & python3 explicitly.
They might get detected and cause weird build errors.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2017-10-24 14:57:12 +03:00
Alexandru Ardelean
e26a34c6b4 openvswitch: enforce the use of the python binary from packages
Seems it was not failing for me because it was probably
using my host Python, which may have the `six` package
available.

This patch enforces the use of the packaged Python.
That way, it's more consistent that the python-six
package is available.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2017-06-29 13:48:42 +03:00
Alexandru Ardelean
3b8c6e01b1 openvswitch: disable built-in kernel module build
Since we're using the kernel's module, this is
un-necessary.
Should speed up the build a bit.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2017-05-25 16:31:27 +03:00
Alexandru Ardelean
c7b22e5550 openvswitch: upgrade to version 2.7.0
Notes:
- drop un-needed patches
- bump kernel support up to 4.9
- switch from git repo to release tarball
- use OVS intree kernel module ; seems that using the kernel module
  from the package has certain issues due to the glue/backport code
  that tries to adapt to many kernel versions and has a potential
  to mess up ; not to mention, the glue code makes the kmod
  a few times larger than it should be
- tested on x86_64 VM

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2017-05-07 01:06:50 +03:00
Alexandru Ardelean
6cb655eba8 openvswitch: fix kernel 4.4 patch for pre-4.4 kernels
Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2016-03-20 12:19:43 +02:00
Alexandru Ardelean
0bef472f60 openvswitch: add support for kernel 4.4
Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2016-03-11 05:46:17 +02:00
Alexandru Ardelean
0932e4fbf2 openvswitch: fix pthread stack size patch
pthread_attr needed to be applied.
otherwhise it still crashes.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2016-03-10 18:41:10 +02:00
Alexandru Ardelean
91f5e2dbf2 openvswitch: pull released version 2.5.0
Also added a patch (from OVS trunk) that fixes pthread
thread stack sizes with musl.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2016-03-05 10:19:43 +02:00
Jeroen van Bemmel
220f321c1d Upgrade OpenVSwitch to version 2.5.0 to support kernels up to 4.3
Most patches for 4.1 are no longer needed, only a minor patch to fix a
missing WAIT_ANY constant. 2.5.0 depends on nf_conntrack (ipv4 and ipv6)

Signed-off-by: Jeroen van Bemmel <jvb127@gmail.com>
2015-12-29 09:02:59 -06:00
Alexandru Ardelean
9afb25cc5a openvswitch: fix build with musl and GCC 5
Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2015-12-13 21:50:11 +02:00
Alexandru Ardelean
4da84af953 openvswitch: use released version 2.4.0
The previous version was an unreleased one from the OVS trunk.
This one is the released version, described here:
  http://openvswitch.org/pipermail/announce/2015-August/000078.html

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2015-10-02 10:22:03 +03:00
Alexandru Ardelean
57e39052a8 openvswitch: upgrade to version 2.4.0
Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2015-08-04 17:03:32 +03:00
Alexandru Ardelean
3c78eb04b8 openvswitch: fix musl compatibility
Remove libatomic support from OVS: musl's libatomic seems incomplete.
Conditionally compile <net/if_packet.h>.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2015-06-20 11:16:22 +03:00
Hauke Mehrtens
84c6815a9c openvswitch: fix build with kernel >= 3.18.13
This fixes a build problem with kernel >= 3.18.13.
This should close #1283.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2015-05-24 15:27:50 +02:00
Emanuele Bovisio
dfd640394c openvswitch: upgrade to version 2.3.90 2015-04-17 11:58:13 +02:00
Alexandru Ardelean
e87af5bd0e openvswitch: upgrade to version 2.3.1
Release notes here:
   https://github.com/openvswitch/ovs/blob/v2.3.1/NEWS

Remove patch (included in 2.3.1):
   0005-datapath-backport___ip_select_ident_function.patch

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2015-01-06 17:05:31 +02:00
Alexandru Ardelean
986b9fbce8 openvswitch: switch patch with patch from ovs trunk
After a few discussions with the guys working on OpenVSwitch
they've recommended we use the EXTRA_CFLAGS env var for setting
flags for the kernel module.

They've updated the trunk with a patch to accomodate that.
That patch is also in this commit, and replaces a patch that I proposed.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2014-12-03 09:05:08 +02:00
Alexandru Ardelean
78f0bd7e45 openvswitch: add patch "datapath: Backport __ip_select_ident() function"
Signed-off-by: Alexandru Ardelean <aa@ocedo.com>
2014-10-30 18:22:03 +02:00
Alexandru Ardelean
935e54417d openvswitch: add patch for adding KCFLAGS var to the OVS build
Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2014-10-28 11:27:25 +02:00
Alexandru Ardelean
8ecc0fb194 openvswitch: initial feed at OpenVSwitch version 2.3
Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2014-09-16 17:13:46 +03:00