From 48769259a8f1f58edcd3be6558e04b8f2873583e Mon Sep 17 00:00:00 2001 From: Yousong Zhou Date: Mon, 25 Feb 2019 02:06:12 +0000 Subject: [PATCH] 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 --- net/openvswitch/Makefile | 8 ++--- .../patches/0001-musl-compatibility.patch | 33 ------------------- ...interface-flag-survive-internal-por.patch} | 10 +++--- ...ost-target-python-for-cross-compile.patch} | 8 ++--- ...tch => 0003-ovs-lib-fix-install_dir.patch} | 6 ++-- ...> 0004-build-disable-building-tests.patch} | 8 ++--- ...linux-Use-unsigned-int-for-ifi_flags.patch | 25 -------------- .../0103-ovs-ctl-fix-setting-hostname.patch | 30 ----------------- ...e-compatible-with-busybox-ip-command.patch | 26 --------------- ...CH-when-building-linux-datapath-modu.patch | 28 ---------------- 10 files changed, 20 insertions(+), 162 deletions(-) delete mode 100644 net/openvswitch/patches/0001-musl-compatibility.patch rename net/openvswitch/patches/{0101-netdev-linux-Let-interface-flag-survive-internal-por.patch => 0001-netdev-linux-Let-interface-flag-survive-internal-por.patch} (83%) rename net/openvswitch/patches/{0102-python-separate-host-target-python-for-cross-compile.patch => 0002-python-separate-host-target-python-for-cross-compile.patch} (83%) rename net/openvswitch/patches/{0104-ovs-lib-fix-install_dir.patch => 0003-ovs-lib-fix-install_dir.patch} (84%) rename net/openvswitch/patches/{0105-build-disable-building-tests.patch => 0004-build-disable-building-tests.patch} (71%) delete mode 100644 net/openvswitch/patches/0100-netdev-linux-Use-unsigned-int-for-ifi_flags.patch delete mode 100644 net/openvswitch/patches/0103-ovs-ctl-fix-setting-hostname.patch delete mode 100644 net/openvswitch/patches/0106-ovs-save-compatible-with-busybox-ip-command.patch delete mode 100644 net/openvswitch/patches/0107-datapath-use-KARCH-when-building-linux-datapath-modu.patch diff --git a/net/openvswitch/Makefile b/net/openvswitch/Makefile index 1a0f7672f..9dfe83277 100644 --- a/net/openvswitch/Makefile +++ b/net/openvswitch/Makefile @@ -15,11 +15,11 @@ include $(INCLUDE_DIR)/kernel.mk # - Check and update kmod dependencies when necessary (runtime module load check in the least) # PKG_NAME:=openvswitch -PKG_VERSION:=2.10.1 +PKG_VERSION:=2.11.0 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://www.openvswitch.org/releases/ -PKG_HASH:=4f93c764295952848a924271250d7c6a6a53747d0019ef6ff880aa8ea6897c80 +PKG_HASH:=f4b01d7376d7298bc6e7fa7a6067229ca7c7e299394e5ea9aff651d52edfdbee PKG_LICENSE:=Apache-2.0 PKG_LICENSE_FILES:=LICENSE @@ -39,7 +39,7 @@ include ../../lang/python/python-package.mk ovs_kmod_packages:= ovs_kmod_intree_kernel_patchver_min:=3.10 -ovs_kmod_intree_kernel_patchver_max:=4.15 +ovs_kmod_intree_kernel_patchver_max:=4.18 ovs_kmod_intree_not_supported:=$(strip $(call kernel_patchver_lt,$(ovs_kmod_intree_kernel_patchver_min))$(call kernel_patchver_gt,$(ovs_kmod_intree_kernel_patchver_max))) ovs_kmod_intree_dir:=$(PKG_BUILD_DIR)/datapath/linux ovs_kmod_upstream_dir:=$(LINUX_DIR)/net/openvswitch @@ -144,7 +144,7 @@ define OvsPackageTemplate URL:=https://www.openvswitch.org TITLE:=$(ovs_$(1)_title) HIDDEN:=$(ovs_$(1)_hidden) - DEPENDS:=$(ovs_$(1)_depends) +libunbound + DEPENDS:=$(ovs_$(1)_depends) +libatomic +libunbound endef define Package/$(call ovs_package_name,$(1))/install diff --git a/net/openvswitch/patches/0001-musl-compatibility.patch b/net/openvswitch/patches/0001-musl-compatibility.patch deleted file mode 100644 index b648add30..000000000 --- a/net/openvswitch/patches/0001-musl-compatibility.patch +++ /dev/null @@ -1,33 +0,0 @@ ---- a/configure.ac -+++ b/configure.ac -@@ -122,7 +122,6 @@ OVS_CHECK_SOCKET_LIBS - OVS_CHECK_XENSERVER_VERSION - OVS_CHECK_GROFF - OVS_CHECK_TLS --OVS_CHECK_ATOMIC_LIBS - OVS_CHECK_GCC4_ATOMICS - OVS_CHECK_ATOMIC_ALWAYS_LOCK_FREE(1) - OVS_CHECK_ATOMIC_ALWAYS_LOCK_FREE(2) ---- a/lib/netdev-linux.c -+++ b/lib/netdev-linux.c -@@ -39,7 +39,9 @@ - #include - #include - #include -+#if defined(__UCLIBC__) || defined(__GLIBC__) - #include -+#endif - #include - #include - #include ---- a/lib/ovs-atomic.h -+++ b/lib/ovs-atomic.h -@@ -320,7 +320,7 @@ - #include "util.h" - - #define IN_OVS_ATOMIC_H -- #if __CHECKER__ -+ #if 1 - /* sparse doesn't understand some GCC extensions we use. */ - #include "ovs-atomic-pthreads.h" - #elif __has_extension(c_atomic) diff --git a/net/openvswitch/patches/0101-netdev-linux-Let-interface-flag-survive-internal-por.patch b/net/openvswitch/patches/0001-netdev-linux-Let-interface-flag-survive-internal-por.patch similarity index 83% rename from net/openvswitch/patches/0101-netdev-linux-Let-interface-flag-survive-internal-por.patch rename to net/openvswitch/patches/0001-netdev-linux-Let-interface-flag-survive-internal-por.patch index 45770b7c7..52ad7c742 100644 --- a/net/openvswitch/patches/0101-netdev-linux-Let-interface-flag-survive-internal-por.patch +++ b/net/openvswitch/patches/0001-netdev-linux-Let-interface-flag-survive-internal-por.patch @@ -1,8 +1,8 @@ -From 9f4775d9a2541e8128ea99f3b02925cc1ee05374 Mon Sep 17 00:00:00 2001 +From c7247a20c7779dbeafda7767f4a3c090da37c0c0 Mon Sep 17 00:00:00 2001 From: Helmut Schaa Date: Wed, 8 Jan 2014 13:48:49 +0100 -Subject: [PATCH 101/107] netdev-linux: Let interface flag survive internal - port setup +Subject: [PATCH 1/4] netdev-linux: Let interface flag survive internal port + setup Due to a race condition when bringing up an internal port on Linux some interface flags (e.g. IFF_MULTICAST) are falsely reset. This @@ -18,10 +18,10 @@ Signed-off-by: Helmut Schaa 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/lib/netdev-linux.c b/lib/netdev-linux.c -index 5ada9a21f..bb8275cfa 100644 +index 25d037cb6..ba1427986 100644 --- a/lib/netdev-linux.c +++ b/lib/netdev-linux.c -@@ -3118,7 +3118,13 @@ update_flags(struct netdev_linux *netdev, enum netdev_flags off, +@@ -3117,7 +3117,13 @@ update_flags(struct netdev_linux *netdev, enum netdev_flags off, unsigned int old_flags, new_flags; int error = 0; diff --git a/net/openvswitch/patches/0102-python-separate-host-target-python-for-cross-compile.patch b/net/openvswitch/patches/0002-python-separate-host-target-python-for-cross-compile.patch similarity index 83% rename from net/openvswitch/patches/0102-python-separate-host-target-python-for-cross-compile.patch rename to net/openvswitch/patches/0002-python-separate-host-target-python-for-cross-compile.patch index e403f2666..404e22cc5 100644 --- a/net/openvswitch/patches/0102-python-separate-host-target-python-for-cross-compile.patch +++ b/net/openvswitch/patches/0002-python-separate-host-target-python-for-cross-compile.patch @@ -1,7 +1,7 @@ -From e451d74788c73e8679e6a2268185a08901ac7f8c Mon Sep 17 00:00:00 2001 +From 38d142005a0b582efdad5580e311d815ad1f34a4 Mon Sep 17 00:00:00 2001 From: Yousong Zhou Date: Tue, 21 Aug 2018 12:21:05 +0000 -Subject: [PATCH 102/107] python: separate host/target python for cross-compile +Subject: [PATCH 2/4] python: separate host/target python for cross-compile At the moment, python-six is a requirement for openvswitch python library on target machine. @@ -13,7 +13,7 @@ Signed-off-by: Yousong Zhou 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/Makefile.am b/Makefile.am -index 788972804..cd90cc176 100644 +index ff1f94b48..417f53230 100644 --- a/Makefile.am +++ b/Makefile.am @@ -60,7 +60,7 @@ endif @@ -26,7 +26,7 @@ index 788972804..cd90cc176 100644 ALL_LOCAL = BUILT_SOURCES = diff --git a/m4/openvswitch.m4 b/m4/openvswitch.m4 -index 5743f83ce..acb6b140e 100644 +index 41042c98e..4a5f0a84a 100644 --- a/m4/openvswitch.m4 +++ b/m4/openvswitch.m4 @@ -449,7 +449,9 @@ AC_DEFUN([OVS_CHECK_PYTHON], diff --git a/net/openvswitch/patches/0104-ovs-lib-fix-install_dir.patch b/net/openvswitch/patches/0003-ovs-lib-fix-install_dir.patch similarity index 84% rename from net/openvswitch/patches/0104-ovs-lib-fix-install_dir.patch rename to net/openvswitch/patches/0003-ovs-lib-fix-install_dir.patch index 86c329f55..f09f6e9f0 100644 --- a/net/openvswitch/patches/0104-ovs-lib-fix-install_dir.patch +++ b/net/openvswitch/patches/0003-ovs-lib-fix-install_dir.patch @@ -1,7 +1,7 @@ -From 940441e2982cb35765830060e8203e5dd1a0f967 Mon Sep 17 00:00:00 2001 +From b476094a64213da20f88976d7562cb4e8d9f2101 Mon Sep 17 00:00:00 2001 From: Yousong Zhou Date: Wed, 14 Mar 2018 16:44:13 +0800 -Subject: [PATCH 104/107] ovs-lib: fix install_dir() +Subject: [PATCH 3/4] ovs-lib: fix install_dir() The command "install" is not available in OpenWrt by default @@ -11,7 +11,7 @@ Signed-off-by: Yousong Zhou 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/utilities/ovs-lib.in b/utilities/ovs-lib.in -index 090a14434..f2a30e065 100644 +index 9a0af2e82..68ab3f250 100644 --- a/utilities/ovs-lib.in +++ b/utilities/ovs-lib.in @@ -159,7 +159,10 @@ install_dir () { diff --git a/net/openvswitch/patches/0105-build-disable-building-tests.patch b/net/openvswitch/patches/0004-build-disable-building-tests.patch similarity index 71% rename from net/openvswitch/patches/0105-build-disable-building-tests.patch rename to net/openvswitch/patches/0004-build-disable-building-tests.patch index 424b85a05..8f8d96053 100644 --- a/net/openvswitch/patches/0105-build-disable-building-tests.patch +++ b/net/openvswitch/patches/0004-build-disable-building-tests.patch @@ -1,7 +1,7 @@ -From d0cad5ac122aca722dc2013c1f53fda44c477cf2 Mon Sep 17 00:00:00 2001 +From d0ffc7cc1a0eb217963099fd90bd437b09b6068d Mon Sep 17 00:00:00 2001 From: Yousong Zhou Date: Tue, 21 Aug 2018 13:02:21 +0000 -Subject: [PATCH 105/107] build: disable building tests +Subject: [PATCH 4/4] build: disable building tests Signed-off-by: Yousong Zhou --- @@ -9,10 +9,10 @@ Signed-off-by: Yousong Zhou 1 file changed, 1 deletion(-) diff --git a/Makefile.am b/Makefile.am -index cd90cc176..2e9e50f3a 100644 +index 417f53230..3fc630f33 100644 --- a/Makefile.am +++ b/Makefile.am -@@ -477,7 +477,6 @@ include m4/automake.mk +@@ -480,7 +480,6 @@ include m4/automake.mk include lib/automake.mk include ofproto/automake.mk include utilities/automake.mk diff --git a/net/openvswitch/patches/0100-netdev-linux-Use-unsigned-int-for-ifi_flags.patch b/net/openvswitch/patches/0100-netdev-linux-Use-unsigned-int-for-ifi_flags.patch deleted file mode 100644 index 9c2a154e9..000000000 --- a/net/openvswitch/patches/0100-netdev-linux-Use-unsigned-int-for-ifi_flags.patch +++ /dev/null @@ -1,25 +0,0 @@ -From e4ac9741a99866976322c21605b312bc27633c92 Mon Sep 17 00:00:00 2001 -From: Helmut Schaa -Date: Wed, 8 Jan 2014 13:48:33 +0100 -Subject: [PATCH 100/107] netdev-linux: Use unsigned int for ifi_flags - -ifi_flags is unsigned, the local equivalents should do the same. - -Signed-off-by: Helmut Schaa ---- - lib/netdev-linux.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/lib/netdev-linux.c b/lib/netdev-linux.c -index e16ea58a0..5ada9a21f 100644 ---- a/lib/netdev-linux.c -+++ b/lib/netdev-linux.c -@@ -3115,7 +3115,7 @@ update_flags(struct netdev_linux *netdev, enum netdev_flags off, - enum netdev_flags on, enum netdev_flags *old_flagsp) - OVS_REQUIRES(netdev->mutex) - { -- int old_flags, new_flags; -+ unsigned int old_flags, new_flags; - int error = 0; - - old_flags = netdev->ifi_flags; diff --git a/net/openvswitch/patches/0103-ovs-ctl-fix-setting-hostname.patch b/net/openvswitch/patches/0103-ovs-ctl-fix-setting-hostname.patch deleted file mode 100644 index 5910a6b0f..000000000 --- a/net/openvswitch/patches/0103-ovs-ctl-fix-setting-hostname.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 6b9732c8851c5466f2a363d88b5acae320801efe Mon Sep 17 00:00:00 2001 -From: Yousong Zhou -Date: Wed, 14 Mar 2018 16:40:01 +0800 -Subject: [PATCH 103/107] ovs-ctl: fix setting hostname - -The command "hostname" is not available in OpenWrt by default. - -The other thing to note is that currently kernel.hostname is not a fully -qualitied name - -Signed-off-by: Yousong Zhou ---- - utilities/ovs-ctl.in | 4 +--- - 1 file changed, 1 insertion(+), 3 deletions(-) - -diff --git a/utilities/ovs-ctl.in b/utilities/ovs-ctl.in -index 43c8f32b7..6203ecff5 100755 ---- a/utilities/ovs-ctl.in -+++ b/utilities/ovs-ctl.in -@@ -36,9 +36,7 @@ insert_mod_if_required () { - } - - set_hostname () { -- # 'hostname -f' needs network connectivity to work. So we should -- # call this only after ovs-vswitchd is running. -- ovs_vsctl set Open_vSwitch . external-ids:hostname="$(hostname -f)" -+ ovs_vsctl set Open_vSwitch . external-ids:hostname="$(sysctl -n kernel.hostname)" - } - - set_system_ids () { diff --git a/net/openvswitch/patches/0106-ovs-save-compatible-with-busybox-ip-command.patch b/net/openvswitch/patches/0106-ovs-save-compatible-with-busybox-ip-command.patch deleted file mode 100644 index 412cad31d..000000000 --- a/net/openvswitch/patches/0106-ovs-save-compatible-with-busybox-ip-command.patch +++ /dev/null @@ -1,26 +0,0 @@ -From 2a59f2b60e8a22dc93d48c511b5c4255b429ff66 Mon Sep 17 00:00:00 2001 -From: Yousong Zhou -Date: Wed, 5 Sep 2018 12:32:54 +0000 -Subject: [PATCH 106/107] ovs-save: compatible with busybox ip command - -Busybox ip command will have exit code 1 for `ip -V` or `ip help` etc., -use `ip rule list` to cover both iproute2 and busybox ip command - -Signed-off-by: Yousong Zhou ---- - utilities/ovs-save | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/utilities/ovs-save b/utilities/ovs-save -index ea8fb6a45..72d460df4 100755 ---- a/utilities/ovs-save -+++ b/utilities/ovs-save -@@ -38,7 +38,7 @@ EOF - } - - save_interfaces () { -- if (ip -V) > /dev/null 2>&1; then :; else -+ if (ip rule list) > /dev/null 2>&1; then :; else - echo "$0: ip not found in $PATH" >&2 - exit 1 - fi diff --git a/net/openvswitch/patches/0107-datapath-use-KARCH-when-building-linux-datapath-modu.patch b/net/openvswitch/patches/0107-datapath-use-KARCH-when-building-linux-datapath-modu.patch deleted file mode 100644 index ddfc39700..000000000 --- a/net/openvswitch/patches/0107-datapath-use-KARCH-when-building-linux-datapath-modu.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 1e859f407b94a0f549fc41fceec11ca12653878b Mon Sep 17 00:00:00 2001 -From: Yousong Zhou -Date: Thu, 6 Sep 2018 11:48:20 +0000 -Subject: [PATCH 107/107] datapath: use KARCH when building linux datapath - modules - -Signed-off-by: Yousong Zhou ---- - datapath/linux/Makefile.main.in | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/datapath/linux/Makefile.main.in b/datapath/linux/Makefile.main.in -index 7d18253be..039485d16 100644 ---- a/datapath/linux/Makefile.main.in -+++ b/datapath/linux/Makefile.main.in -@@ -68,10 +68,10 @@ ifeq (,$(wildcard $(CONFIG_FILE))) - endif - - default: -- $(MAKE) -C $(KSRC) M=$(builddir) modules -+ $(MAKE) -C $(KSRC) $(if @KARCH@,ARCH=@KARCH@) M=$(builddir) modules - - modules_install: -- $(MAKE) -C $(KSRC) M=$(builddir) modules_install -+ $(MAKE) -C $(KSRC) $(if @KARCH@,ARCH=@KARCH@) M=$(builddir) modules_install - depmod `sed -n 's/#define UTS_RELEASE "\([^"]*\)"/\1/p' $(KSRC)/include/generated/utsrelease.h` - endif -