Commit Graph

89 Commits

Author SHA1 Message Date
Jan Pavlinec 299e5b0a9b
treewide: add PKG_CPE_ID for better cvescanner coverage
Signed-off-by: Jan Pavlinec <jan.pavlinec@nic.cz>
2019-09-17 12:40:26 +02: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 8897ea4d51 openvswitch: conditionally depends on nf_conncount.ko
This is required for conntrack zone limit support.  Linux upstream
commit is 11efd5cb ("openvswitch: Support conntrack zone limit")

Ref: https://github.com/openwrt/packages/issues/9274#issuecomment-507181166
Reported-by: Lech Perczak <lech.perczak@gmail.com>
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2019-07-01 13:45:38 +00:00
Yousong Zhou 6aef8faae7 openvswitch: bump to version 2.11.1
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2019-06-20 08:35:31 +00:00
Yousong Zhou 51a68f08c5 openvswitch: drop dependencies on kmod-mpls
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2019-06-20 08:35:31 +00:00
Yousong Zhou 885fc52411 openvswitch: conditionally select kmod-nsh
The nsh.ko requirement was introduced in kernel 4.15.  Currently there
are 3 kernel versions in base system, 4.9, 4.14, 4.19

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2019-06-20 08:35:31 +00:00
Yousong Zhou a6ec885522 openvswitch: rework skipping intree kmod build for unsupported kernels
This is a workaround to prevent the whole build from failing because of
the intree kmods are not supported yet by upstream project.

Root cause is that kernel version should not play a part when making
DEPENDS as the generated kconfig was for all targets that may have
different kernel versions.

One less than ideal effect of this change is that for an unsupported
kernel version, people can still select the intree kmod but it won't be
built.  This may contradict expectation if the warning was not noticed
by them

Resolves openwrt/packages#9274

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2019-06-20 08:24:55 +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 989ef5d414 openvswitch: switch to using python3 both on build and target machine
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2019-04-26 21:03:37 +08:00
Yousong Zhou 21ac0adcd2 openvswitch: add openvswitch-python3 package
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2019-04-26 21:03:37 +08: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 0478614556 openvswitch: fix building intree datapath module unconditionally
Fixes f2bf8d3 ("openvswitch: provide in-tree kmod builds")

Closes openwrt/packages#7360

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-11-10 07:41:14 +00:00
Yousong Zhou 98d206086b openvswitch: bump to version 2.10.1
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-10-29 03:36:01 +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 483e12a9ec openvswitch: depends on libunbound
This was introduced in Open vSwitch 2.10 in commit 771680d ("DNS: Add
basic support for asynchronous DNS resolving")

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-09-05 06:22:06 +00: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 02fa673f82 openvswitch: bump to version 2.9.2
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-06-04 11:27:54 +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 86ece31c66 openvswitch: remove ovs-parse-backtrace
It's a python script and requires backtrace support when building
openvswitch which requires glibc.

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-05-28 18:06:44 +08:00
Yousong Zhou a65da6a79a openvswitch: remove docker related utilities
The overlay and underlay driver, and ovs-docker utilities requires setup
and dependencies that are just not available in known maintained state.

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-05-28 17:41:51 +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
Felix Fietkau 47df65608f openvswitch: add missing dependency
Fixes a build error

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-13 11:17:46 +01:00
Yousong Zhou e22de081f9 openvswitch: use https download url
At the time of this writing, Open vSwitch official website suggests
http://openvswitch.org whose https couterpart uses a self-signed
certificate, but it redirects to http://www.openvswitch.org, which has a
working https equivalent.

Reported-by: Rosen Penev <rosenp@gmail.com>
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-03-06 00:29:53 +08:00
Yousong Zhou 6aedd02984 openvswitch: set Yousong Zhou as the maintainer
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-03-06 00:29:53 +08:00
Yousong Zhou 5f5dc3614f openvswitch: add gre, vxlan, geneve tunneling support
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-03-06 00:29:53 +08:00
Yousong Zhou 19b2e7627e openvswitch: bump PKG_RELEASE
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-03-06 00:29:53 +08:00
Yousong Zhou eeb6a3fcbb openvswitch: rework openvswitch kernel datapath package
- KCONFIG: bridge compatibility was removed since Open vSwitch 1.10.
   See Open vSwitch FAQ.md for details
 - The module does not depend on kmod-gre, kmod-vxlan
 - Use AutoProbe to remove dependecy on specific priority

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-03-06 00:29:53 +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 5b56acae21 openvswitch: python: remove openvswitch as a dependency
The python library is a standalone unit.  Remove dependency on
PACKAGE_openvswitch to allow users to use it with maybe remote
openvswitch services.

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-03-06 00:29:53 +08:00
Yousong Zhou c8ed010772 openvswitch: remove --disable-ssl
Remove it since we already select libopenssl in openvswitch-base

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-03-06 00:29:53 +08:00
Yousong Zhou f11d8495ca openvswitch: use default rundir /var/run/openvswitch/
This subdir contains multiple pid, unix domain socket files.  It's a
custom to put them in it's own subdir

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
Hannu Nyman e8e827c2c6 Revert "openvswitch: remove dependency on kernel version"
This reverts commit 44df061c48.

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2018-02-15 09:17:48 +02:00
Hannu Nyman a576b1d829 Revert "openvswitch: fix breakage due to removed SUPPORTED_KERNELS"
This reverts commit 8f2a9a27fd.

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2018-02-15 09:17:14 +02:00
Hannu Nyman 8f2a9a27fd openvswitch: fix breakage due to removed SUPPORTED_KERNELS
Fix breakage caused by 44df061c48 by removing the leftover
usage of the removed SUPPORTED_KERNELS variable

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2018-02-14 21:56:24 +02:00
Alexandru Ardelean 44df061c48 openvswitch: remove dependency on kernel version
For a while now OVS has been using the kernel's kmod.
So it doesn't make sense to limit the package build for a specific set of
kernels anymore.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2018-02-13 21:24:51 +02:00
Alexandru Ardelean 1476739d5f treewide: use local python-package.mk & python3-package.mk files
This guarantees for the package feeds that
the mk files will always be available for all packages.

Will need to see about external-feed Python packages
a bit later.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2018-01-10 23:06:23 +02:00
Matthias Schiffer 751dbaca0b
openvswitch: don't attempt to use sphinx-build found on the build host
openvswitch fails to build on my Arch Linux system, as it tries to use my build
host's sphinx-build with OpenWrt's python. Add an override to ensure this can't
happen.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-01-09 23:20:30 +01: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 1ef945315b openvswitch: bump to version 2.7.2
Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2017-08-02 15:02:37 +03:00
Alexandru Ardelean 6b591cfb4b openvswitch: bump to version 2.7.1
Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2017-07-15 20:12:34 +03:00
Alexandru Ardelean 919b9bc41a openvswitch: make dependencies conditional for openvswitch-python subpackage
Apparently, even if you don't select the `openvswitch-python` package,
Python still gets built (for the target build).

But, if the python dependencies are conditional on the
`PACKAGE_openvswitch-python` symbol then they aren't build.

This should improve build times, if you only want to build the
`openvswitch` package.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2017-06-29 13:50:42 +03:00
Alexandru Ardelean 2171c73de0 openvswitch: add CONFIG_PACKAGE_openvswitch-python to PKG_BUILD_DEPENDS
That way, OVS gets rebuilt if the openvswitch-python
package is selected or unselected.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2017-06-29 13:48:42 +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 0ec671fc5c openvswitch: fix build for ovs python libs & related packages
Admittedly I never used those Python libs.
And the setup I was trying it on, did not have
the Python interpreter packaged, so these build failures
went un-noticed.

That's my fault for not trying it out properly on
a full LEDE repo, with all packages.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2017-05-24 23:18:16 +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
Jo-Philipp Wich bf7ef2af12 openswitch: improve build time for kmod-only builds
When only kmod-openvswitch is enabled, which commonly happens during LEDE
release builds, there is no need to build the entire userland of openvswitch
as this is done at a later stage on systems dedicated to build only userspace
packages.

This change conditionalizes the dependency on python, which means that python
prerequisites are only compiled if the openvswitch-python package is enabled,
which allows us to eliminate the entire python dependency chain.

Furthermore, this change sets MAKE_PATH to the kernel module sub directory
if only kmod-openvswitch is enabled which causes the openvswitch build system
to only process sources related to the .ko files.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-12-16 02:57:26 +01: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