# Copyright (C) 2009, 2010, 2013, 2014 Nicira Networks, Inc. # # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. This file is offered as-is, # without warranty of any kind. # # If tests have to be skipped while building, specify the '--without check' # option. For example: # rpmbuild -bb --without check rhel/openvswitch-fedora.spec # This defines the base package name's version. %define pkgver 2.11 %define pkgname openvswitch%{pkgver} #%%global commit0 f11b99776c46831184ac30065c6cdf911061bb5a #%%global date 20190223 #%%global shortcommit0 %(c=%{commit0}; echo ${c:0:7}) # DPDK commit #%%global commit1 ef8b7c505f10897621c0801d8ef3e961385246f8 #%%global shortcommit1 %(c=%{commit1}; echo ${c:0:7}) # Enable PIE, bz#955181 %global _hardened_build 1 # RHEL-7 doesn't define _rundir macro yet # Fedora 15 onwards uses /run as _rundir %if 0%{!?_rundir:1} %define _rundir /run %endif # FIXME Test "STP - flush the fdb and mdb when topology changed" fails on s390x # FIXME 2 tests fails on ppc64le. They will be hopefully fixed before official 2.11 %ifarch %{ix86} x86_64 aarch64 %bcond_without check %else %bcond_with check %endif # option to run kernel datapath tests, requires building as root! %bcond_with check_datapath_kernel # option to build with libcap-ng, needed for running OVS as regular user %bcond_without libcapng # Build python2 (that provides python) and python3 subpackages on Fedora # Build only python3 (that provides python) subpackage on RHEL8 # Build only python subpackage on RHEL7 %if 0%{?rhel} > 7 || 0%{?fedora} # Use Python3 %global _py python3 %global _py2 python2 %global with_python3 1 %if 0%{?fedora} %global with_python2 1 %else %global with_python2 0 %endif # On RHEL8 Sphinx is included in buildroot %global external_sphinx 1 %else # Use Python2 %global _py python %global _py2 python %global with_python2 1 %global with_python3 0 # Don't use external sphinx (RHV doesn't have optional repositories enabled) %global external_sphinx 0 %endif Name: %{pkgname} Summary: Open vSwitch Group: System Environment/Daemons daemon/database/utilities URL: http://www.openvswitch.org/ Version: %{pkgver}.0 Release: 50%{?commit0:.%{date}git%{shortcommit0}}%{?commit1:dpdk%{shortcommit1}}%{?dist} # Nearly all of openvswitch is ASL 2.0. The bugtool is LGPLv2+, and the # lib/sflow*.[ch] files are SISSL # datapath/ is GPLv2 (although not built into any of the binary packages) License: ASL 2.0 and LGPLv2+ and SISSL %define dpdkver %{?commit1}%{!?commit1:18.11.5} %define dpdkdir dpdk-stable %define dpdksver %(echo %{dpdkver} | cut -d. -f-2) # NOTE: DPDK does not currently build for s390x # DPDK on aarch64 is not stable enough to be enabled in FDP %define dpdkarches x86_64 ppc64le %if 0%{?commit0:1} Source: https://github.com/openvswitch/ovs/archive/%{commit0}.tar.gz#/openvswitch-%{shortcommit0}.tar.gz %else Source: https://www.openvswitch.org/releases/openvswitch-%{version}.tar.gz %endif %if 0%{?commit1:1} Source10: https://git.dpdk.org/dpdk/snapshot/dpdk-%{dpdkver}.tar.xz %else Source10: https://fast.dpdk.org/rel/dpdk-%{dpdkver}.tar.xz %endif %define docutilsver 0.12 %define pygmentsver 1.4 %define sphinxver 1.1.3 Source100: https://pypi.io/packages/source/d/docutils/docutils-%{docutilsver}.tar.gz Source101: https://pypi.io/packages/source/P/Pygments/Pygments-%{pygmentsver}.tar.gz Source102: https://pypi.io/packages/source/S/Sphinx/Sphinx-%{sphinxver}.tar.gz Source500: configlib.sh Source501: gen_config_group.sh Source502: set_config.sh # Important: source503 is used as the actual copy file # @TODO: this causes a warning - fix it? Source504: arm64-armv8a-linuxapp-gcc-config Source505: ppc_64-power8-linuxapp-gcc-config Source506: x86_64-native-linuxapp-gcc-config # The DPDK is designed to optimize througput of network traffic using, among # other techniques, carefully crafted assembly instructions. As such it # needs extensive work to port it to other architectures. ExclusiveArch: x86_64 aarch64 ppc64le s390x # Do not enable this otherwise YUM will break on any upgrade. # Provides: openvswitch Conflicts: openvswitch < 2.10 Conflicts: openvswitch-dpdk < 2.10 # dpdk_mach_arch maps between rpm and dpdk arch name, often same as _target_cpu # dpdk_mach_tmpl is the config template dpdk_mach name, often "native" # dpdk_mach is the actual dpdk_mach name used in the dpdk make system %ifarch x86_64 %define dpdk_mach_arch x86_64 %define dpdk_mach_tmpl native %define dpdk_mach default %endif %ifarch aarch64 %define dpdk_mach_arch arm64 %define dpdk_mach_tmpl armv8a %define dpdk_mach armv8a %endif %ifarch ppc64le %define dpdk_mach_arch ppc_64 %define dpdk_mach_tmpl power8 %define dpdk_mach power8 %endif %define dpdktarget %{dpdk_mach_arch}-%{dpdk_mach_tmpl}-linuxapp-gcc # ovs-patches # OVS (including OVN) backports (0 - 999) # Bug 1684477 Patch01: 0001-rhel-Use-PIDFile-on-forking-systemd-service-files.patch # Bug 1687775 Patch10: 0001-ovs-ctl-Permit-to-specify-additional-options.patch Patch11: 0002-rhel-Add-an-example-to-specify-custom-options.patch # Bug 1692812 Patch15: 0001-netlink-linux-account-for-the-netnsid-netlink-attr.patch Patch16: 0002-netlink-linux-fix-to-append-the-netnsid-netlink-attr.patch # Bug 1702564 Patch20: 0001-Add-a-new-OVS-action-check_pkt_larger.patch # Bug 1720315 Patch42: 0001-rhel-limit-stack-size-to-2M.patch # Bug 1725623 Patch45: 0001-netdev-tc-offloads-Support-match-on-priority-tags.patch # Bug 1720947 Patch50: 0001-ovn-nbctl-Daemon-mode-should-retry-when-IDL-connecti.patch Patch51: 0002-ovsdb-server-drop-all-connections-on-read-write-stat.patch # Bug 1725623 Patch60: 0001-tunnel-Add-layer-2-IPv6-GRE-encapsulation-support.patch Patch61: 0002-netdev-vport-Make-ip6gre-netdev-type-to-use-TC-rules.patch # Bug 1685642 Patch65: 0001-tnl-neigh-Use-outgoing-ofproto-version.patch # Bug 1747531 Patch70: 0001-netdev-dpdk-Fix-additional-vhost-tx-retry.patch Patch71: 0001-doc-Move-vhost-tx-retry-info-to-separate-section.patch Patch72: 0002-netdev-dpdk-Add-custom-stat-for-vhost-tx-retries.patch Patch73: 0003-netdev-dpdk-Enable-tx-retries-max-config.patch Patch80: 0001-vswitch-ratelimit-the-device-add-log.patch # Bug #1761461 Patch90: 0001-ofproto-dpif-Fix-continuation-with-patch-port.patch # Bug 1761572 Patch100: 0001-ovsdb-server-Don-t-drop-all-connections-on-read-writ.patch # Bug 1766586 Patch110: 0001-ovsdb-server-Allow-replication-from-older-schema-ver.patch # Bug 1740144 Patch120: 0001-netdev-dpdk-Track-vhost-tx-contention.patch # Bug 1776883 Patch130: 0001-jsonrpc-increase-input-buffer-size-from-512-to-4096.patch # Bug 1764125 Patch140: 0001-ovs-tcpundump-allow-multiple-packet-lengths.patch # Bug 1764127 Patch150: 0001-ovs-tcpundump-exit-when-getting-version.patch # Bug 1751161 Patch160: 0001-ovs-check-dead-ifs-python3-print-format.patch Patch161: 0002-ovs-check-dead-ifs-unshadow-pid-variable.patch Patch162: 0003-flake8-also-check-the-ovs-check-dead-ifs-script.patch # Bug 1780745 Patch170: 0001-Shutdown-SSL-connection-before-closing-socket.patch # Bug #1719644 & #1733402 Patch180: 0001-bridge-Allow-manual-notifications-about-interfaces-u.patch Patch181: 0001-netdev-dpdk-add-support-for-the-RTE_ETH_EVENT_INTR_R.patch # Bug #1726579 Patch190: 0001-netdev-dpdk-Add-coverage-counter-to-count-vhost-IRQs.patch # Bug #1788800 Patch200: 0001-ovsdb-replication-Provide-option-to-configure-probe-.patch # Bug 1790841 Patch210: 0001-netdev-dpdk-Fix-not-reporting-rx_oversize_errors-in-.patch Patch211: 0002-netdev-dpdk-Refactor-vhost-custom-stats-for-extensib.patch Patch212: 0003-netdev-dpdk-Reuse-vhost-function-for-dpdk-ETH-custom.patch Patch213: 0004-netdev-dpdk-Detailed-packet-drop-statistics.patch Patch214: 0001-netdev-dpdk-Fix-sw-stats-perf-drop.patch # Bug #1726568 Patch220: 0001-userspace-Improved-packet-drop-statistics.patch # Bug #1785586 Patch230: 0001-rhel-secure-openvswitch-useropts.patch Patch231: 0002-rhel-run-ovn-with-the-same-user-as-ovs.patch Patch232: 0003-rhel-set-useropts-optional-for-ovsdb-server.patch Patch233: 0004-rhel-let-ctl-handle-runtime-directory.patch # Bug #1780690 Patch240: 0001-tc-Set-no_percpu-flag-for-compatible-actions.patch # Bug #1732305 Patch250: 0001-lib-tc-Support-optional-tunnel-id.patch Patch251: 0002-lib-tc-Fix-flow-dump-for-tunnel-id-equal-zero.patch # Bug #1722337 Patch260: 0001-dpif-netlink-Allow-offloading-of-flows-with-dl_type-.patch # Bug #1727599 Patch270: 0001-netdev-vport-Use-the-dst_port-in-tunnel-netdev-name.patch # DPDK backports (1000-1999) # Take patches applied to DPDK 18.11 branch after latest release # generated with: git diff --src-prefix=a/dpdk-stable-18.11.5/ \ # --dst-prefix=b/dpdk-stable-18.11.5/ \ # v18.11.5..remotes/origin/18.11 # latest commit included as indicated in patch name # Bug #1672538 Patch1000: 0001-vhost-un-inline-dirty-pages-logging-functions.patch Patch1001: 0002-vhost-do-not-inline-packed-and-split-functions.patch Patch1002: 0003-vhost-do-not-inline-unlikely-fragmented-buffers-code.patch Patch1003: 0004-vhost-simplify-descriptor-buffer-prefetching.patch Patch1004: 0005-eal-x86-force-inlining-of-all-memcpy-and-mov-helpers.patch # Bug #1711739 Patch1020: 0001-eal-compute-IOVA-mode-based-on-PA-availability.patch Patch1021: 0002-bus-pci-consider-only-usable-devices-for-IOVA-mode.patch Patch1022: 0003-eal-fix-IOVA-mode-selection-as-VA-for-PCI-drivers.patch Patch1023: 0004-bus-pci-always-check-IOMMU-capabilities.patch # Bug #1719644 & #1733402 Patch1030: 0001-net-i40e-downgrade-error-log.patch Patch1031: 0001-net-i40e-re-program-promiscuous-mode-on-VF-interface.patch # Bug #1726579 Patch1040: 0001-vhost-add-device-op-when-notification-to-guest-is-se.patch # Bug #1738789 Patch1050: 0001-eal-add-ack-interrupt-API.patch Patch1051: 0002-net-qede-use-ack-in-interrupt-handlers.patch # Bug #1792399 Patch1060: 0001-vhost-add-external-message-handling-to-the-API.patch Patch1061: 0002-vhost-fix-vring-address-handling-during-live-migrati.patch Patch1062: 0003-vhost-translate-incoming-log-address-to-GPA.patch Patch1063: 0004-vhost-convert-buffer-addresses-to-GPA-for-logging.patch Patch1064: 0005-vhost-prevent-zero-copy-mode-if-IOMMU-is-on.patch Patch1065: 0006-vhost-fix-virtqueue-not-accessible.patch # Bug #1798996 Patch1070: 0001-vhost-fix-vring-memory-partially-mapped.patch Patch1071: 0002-vhost-protect-log-address-translation-in-IOTLB-updat.patch # Bug #1793068 Patch1080: 0001-vhost-fix-packed-virtqueue-ready-condition.patch # FIXME Sphinx is used to generate some manpages, unfortunately, on RHEL, it's # in the -optional repository and so we can't require it directly since RHV # doesn't have the -optional repository enabled and so TPS fails %if %{external_sphinx} BuildRequires: %{_py}-sphinx %else # Sphinx dependencies BuildRequires: %{_py}-devel BuildRequires: %{_py}-setuptools #BuildRequires: %{_py}-docutils BuildRequires: %{_py}-jinja2 BuildRequires: %{_py}-nose #BuildRequires: %{_py}-pygments # docutils dependencies BuildRequires: %{_py}-imaging # pygments dependencies BuildRequires: %{_py}-nose %endif BuildRequires: gcc gcc-c++ make BuildRequires: autoconf automake libtool BuildRequires: systemd-units openssl openssl-devel %if %{with_python3} BuildRequires: python3-devel python3-six python3-setuptools %endif %if %{with_python2} BuildRequires: %{_py2}-devel %{_py2}-six %{_py2}-setuptools %endif BuildRequires: desktop-file-utils BuildRequires: groff-base graphviz BuildRequires: unbound-devel # make check dependencies BuildRequires: procps-ng %if %{with_python2} BuildRequires: pyOpenSSL %else BuildRequires: python3-pyOpenSSL %endif %if %{with check_datapath_kernel} BuildRequires: nmap-ncat # would be useful but not available in RHEL or EPEL #BuildRequires: pyftpdlib %endif %if %{with libcapng} BuildRequires: libcap-ng libcap-ng-devel %endif %ifarch %{dpdkarches} # DPDK driver dependencies BuildRequires: zlib-devel numactl-devel %ifarch x86_64 BuildRequires: rdma-core-devel >= 15 libmnl-devel %global __requires_exclude_from ^%{_libdir}/openvswitch/librte_pmd_mlx[45]_glue\.so.*$ %endif # Required by packaging policy for the bundled DPDK Provides: bundled(dpdk) = %{dpdkver} %endif Requires: openssl iproute module-init-tools #Upstream kernel commit 4f647e0a3c37b8d5086214128614a136064110c3 #Requires: kernel >= 3.15.0-0 Requires: openvswitch-selinux-extra-policy Requires(pre): shadow-utils Requires(post): /bin/sed Requires(post): /usr/sbin/usermod Requires(post): /usr/sbin/groupadd Requires(post): systemd-units Requires(preun): systemd-units Requires(postun): systemd-units Obsoletes: openvswitch-controller <= 0:2.1.0-1 %description Open vSwitch provides standard network bridging functions and support for the OpenFlow protocol for remote per-flow control of traffic. %if %{with_python2} %package -n %{_py2}-%{pkgname} Summary: Open vSwitch %{_py2} bindings License: ASL 2.0 Requires: %{_py2} %{_py2}-six Requires: %{pkgname} = %{?epoch:%{epoch}:}%{version}-%{release} %if "%{_py2}" == "python2" Obsoletes: python-%{pkgname} < 2.6.1-2 Provides: python-%{pkgname} = %{?epoch:%{epoch}:}%{version}-%{release} %endif %description -n %{_py2}-%{pkgname} Python bindings for the Open vSwitch database %endif %if %{with_python3} %package -n python3-%{pkgname} Summary: Open vSwitch python3 bindings License: ASL 2.0 Requires: python3 python3-six Requires: %{pkgname} = %{?epoch:%{epoch}:}%{version}-%{release} %if ! %{with_python2} Obsoletes: python-%{pkgname} < 2.10.0-6 Provides: python-%{pkgname} = %{?epoch:%{epoch}:}%{version}-%{release} %endif %description -n python3-%{pkgname} Python bindings for the Open vSwitch database %endif %package test Summary: Open vSwitch testing utilities License: ASL 2.0 BuildArch: noarch %if %{with_python2} Requires: %{_py2}-%{pkgname} = %{?epoch:%{epoch}:}%{version}-%{release} Requires: %{_py2} %{_py2}-twisted%{?rhel:-web} Requires: %{_py2}-netifaces %else Requires: python3-%{pkgname} = %{?epoch:%{epoch}:}%{version}-%{release} Requires: python3-netifaces %endif Requires: tcpdump %description test Utilities that are useful to diagnose performance and connectivity issues in Open vSwitch setup. %package devel Summary: Open vSwitch OpenFlow development package (library, headers) License: ASL 2.0 Requires: %{pkgname} = %{?epoch:%{epoch}:}%{version}-%{release} %description devel This provides shared library, libopenswitch.so and the openvswitch header files needed to build an external application. %if 0%{?rhel} > 7 || 0%{?fedora} > 28 %package -n network-scripts-%{name} Summary: Open vSwitch legacy network service support License: ASL 2.0 Requires: network-scripts Supplements: (%{name} and network-scripts) %description -n network-scripts-%{name} This provides the ifup and ifdown scripts for use with the legacy network service. %endif %prep %if 0%{?commit0:1} %autosetup -n ovs-%{commit0} -a 10 -p 1 %else %autosetup -n openvswitch-%{version} -a 10 -p 1 %endif %if ! %{external_sphinx} %if 0%{?commit0:1} %setup -n ovs-%{commit0} -q -D -T -a 100 -a 101 -a 102 %else %setup -n openvswitch-%{version} -q -D -T -a 100 -a 101 -a 102 %endif %endif %build # Build Sphinx on RHEL %if ! %{external_sphinx} export PYTHONPATH="${PYTHONPATH:+$PYTHONPATH:}%{_builddir}/pytmp/lib/python" for x in docutils-%{docutilsver} Pygments-%{pygmentsver} Sphinx-%{sphinxver}; do pushd "$x" %{_py} setup.py install --home %{_builddir}/pytmp popd done export PATH="$PATH:%{_builddir}/pytmp/bin" %endif %if 0%{?commit0:1} # fix the snapshot unreleased version to be the released one. sed -i.old -e "s/^AC_INIT(openvswitch,.*,/AC_INIT(openvswitch, %{version},/" configure.ac %endif ./boot.sh %ifarch %{dpdkarches} # build dpdk # Lets build DPDK first cd %{dpdkdir}-%{dpdkver} # In case dpdk-devel is installed unset RTE_SDK RTE_INCLUDE RTE_TARGET # Avoid appending second -Wall to everything, it breaks upstream warning # disablers in makefiles. Strip explicit -march= from optflags since they # will only guarantee build failures, DPDK is picky with that. # Note: _hardening_ldflags has to go on the extra cflags line because dpdk is # astoundingly convoluted in how it processes its linker flags. Fixing it in # dpdk is the preferred solution, but adjusting to allow a gcc option in the # ldflags, even when gcc is used as the linker, requires large tree-wide changes touch obj.o gcc -### obj.o 2>&1 | awk '/.*collect2.*/ { print $0}' | sed -e 's/\S*\.res\S*//g' -e 's/-z \S*//g' -e 's/[^ ]*\.o//g' -e 's/ /\n/g' | sort -u > ./noopts.txt gcc -### $RPM_LD_FLAGS obj.o 2>&1 | awk '/.*collect2.*/ {print $0}' | sed -e 's/\S*\.res\S*//g' -e 's/-z \S*//g' -e 's/[^ ]*\.o//g' -e 's/ /\n/g' | sort -u > ./opts.txt EXTRA_RPM_LDFLAGS=$(comm -13 ./noopts.txt ./opts.txt) rm -f obj.o export EXTRA_CFLAGS="$(echo %{optflags} | sed -e 's:-Wall::g' -e 's:-march=[[:alnum:]]* ::g') -Wformat -fPIC %{_hardening_ldflags}" export EXTRA_LDFLAGS=$(echo %{__global_ldflags} | sed -e's/-Wl,//g' -e's/-spec.*//') export HOST_EXTRA_CFLAGS="$EXTRA_CFLAGS $EXTRA_RPM_LDFLAGS" export EXTRA_HOST_LDFLAGS="$EXTRA_RPM_LDFLAGS $(echo %{__global_ldflags} | sed -e's/-spec.*//')" # DPDK defaults to using builder-specific compiler flags. However, # the config has been changed by specifying CONFIG_RTE_MACHINE=default # in order to build for a more generic host. NOTE: It is possible that # the compiler flags used still won't work for all Fedora-supported # dpdk_machs, but runtime checks in DPDK will catch those situations. make V=1 O=%{dpdktarget} T=%{dpdktarget} %{?_smp_mflags} config cp -f %{SOURCE500} %{SOURCE502} "%{_sourcedir}/%{dpdktarget}-config" . %{SOURCE502} %{dpdktarget}-config "%{dpdktarget}/.config" make V=1 O=%{dpdktarget} %{?_smp_mflags} # Generate a list of supported drivers, its hard to tell otherwise. cat << EOF > README.DPDK-PMDS DPDK drivers included in this package: EOF for f in $(ls %{dpdk_mach_arch}-%{dpdk_mach_tmpl}-linuxapp-gcc/lib/lib*_pmd_*); do basename ${f} | cut -c12- | cut -d. -f1 | tr [:lower:] [:upper:] done >> README.DPDK-PMDS cat << EOF >> README.DPDK-PMDS For further information about the drivers, see http://dpdk.org/doc/guides-%{dpdksver}/nics/index.html EOF cd - %endif # build dpdk # And now for OVS... mkdir build-shared build-static pushd build-shared ln -s ../configure %configure \ %if %{with libcapng} --enable-libcapng \ %else --disable-libcapng \ %endif --disable-static \ --enable-shared \ --enable-ssl \ --with-pkidir=%{_sharedstatedir}/openvswitch/pki make %{?_smp_mflags} popd pushd build-static ln -s ../configure %ifarch %{dpdkarches} LDFLAGS="%{__global_ldflags} -Wl,-rpath,%{_libdir}/openvswitch" \ %endif %configure \ %if %{with libcapng} --enable-libcapng \ %else --disable-libcapng \ %endif --enable-ssl \ %ifarch %{dpdkarches} --with-dpdk=$(pwd)/../%{dpdkdir}-%{dpdkver}/%{dpdktarget} \ %endif --with-pkidir=%{_sharedstatedir}/openvswitch/pki make %{?_smp_mflags} popd /usr/bin/%{_py} build-aux/dpdkstrip.py \ --dpdk \ < rhel/usr_lib_systemd_system_ovs-vswitchd.service.in \ > rhel/usr_lib_systemd_system_ovs-vswitchd.service %install rm -rf $RPM_BUILD_ROOT make -C build-shared install-libLTLIBRARIES DESTDIR=$RPM_BUILD_ROOT make -C build-static install DESTDIR=$RPM_BUILD_ROOT install -d -m 0755 $RPM_BUILD_ROOT%{_rundir}/openvswitch install -d -m 0750 $RPM_BUILD_ROOT%{_localstatedir}/log/openvswitch install -d -m 0755 $RPM_BUILD_ROOT%{_sysconfdir}/openvswitch install -p -D -m 0644 rhel/usr_lib_udev_rules.d_91-vfio.rules \ $RPM_BUILD_ROOT%{_udevrulesdir}/91-vfio.rules install -p -D -m 0644 \ rhel/usr_share_openvswitch_scripts_systemd_sysconfig.template \ $RPM_BUILD_ROOT/%{_sysconfdir}/sysconfig/openvswitch for service in openvswitch ovsdb-server ovs-vswitchd \ ovs-delete-transient-ports; do install -p -D -m 0644 \ rhel/usr_lib_systemd_system_${service}.service \ $RPM_BUILD_ROOT%{_unitdir}/${service}.service done install -m 0755 rhel/etc_init.d_openvswitch \ $RPM_BUILD_ROOT%{_datadir}/openvswitch/scripts/openvswitch.init install -p -D -m 0644 rhel/etc_openvswitch_default.conf \ $RPM_BUILD_ROOT/%{_sysconfdir}/openvswitch/default.conf install -p -D -m 0644 rhel/etc_logrotate.d_openvswitch \ $RPM_BUILD_ROOT/%{_sysconfdir}/logrotate.d/openvswitch install -m 0644 vswitchd/vswitch.ovsschema \ $RPM_BUILD_ROOT/%{_datadir}/openvswitch/vswitch.ovsschema install -d -m 0755 $RPM_BUILD_ROOT/%{_sysconfdir}/sysconfig/network-scripts/ install -p -m 0755 rhel/etc_sysconfig_network-scripts_ifdown-ovs \ $RPM_BUILD_ROOT/%{_sysconfdir}/sysconfig/network-scripts/ifdown-ovs install -p -m 0755 rhel/etc_sysconfig_network-scripts_ifup-ovs \ $RPM_BUILD_ROOT/%{_sysconfdir}/sysconfig/network-scripts/ifup-ovs %if %{with_python2} install -d -m 0755 $RPM_BUILD_ROOT%{python_sitelib} cp -a $RPM_BUILD_ROOT/%{_datadir}/openvswitch/python/ovstest \ $RPM_BUILD_ROOT%{python_sitelib} %else install -d -m 0755 $RPM_BUILD_ROOT%{python3_sitelib} cp -a $RPM_BUILD_ROOT/%{_datadir}/openvswitch/python/ovstest \ $RPM_BUILD_ROOT%{python3_sitelib} %endif # Build the JSON C extension for the Python lib (#1417738) pushd python %if %{with_python2} ( export CPPFLAGS="-I ../include -I ../build-shared/include" export LDFLAGS="%{__global_ldflags} -L $RPM_BUILD_ROOT%{_libdir}" %py2_build %py2_install [ -f "$RPM_BUILD_ROOT/%{python2_sitearch}/ovs/_json.so" ] ) %endif %if %{with_python3} ( export CPPFLAGS="-I ../include -I ../build-shared/include" export LDFLAGS="%{__global_ldflags} -L $RPM_BUILD_ROOT%{_libdir}" %py3_build %py3_install [ -f "$RPM_BUILD_ROOT/%{python3_sitearch}/ovs/_json.cpython-%{python3_version_nodots}m-%{_arch}-%{_target_os}%{?_gnu}.so" ] ) %endif popd rm -rf $RPM_BUILD_ROOT/%{_datadir}/openvswitch/python/ install -d -m 0755 $RPM_BUILD_ROOT/%{_sharedstatedir}/openvswitch install -d -m 0755 $RPM_BUILD_ROOT%{_prefix}/lib/firewalld/services/ install -p -D -m 0755 \ rhel/usr_share_openvswitch_scripts_ovs-systemd-reload \ $RPM_BUILD_ROOT%{_datadir}/openvswitch/scripts/ovs-systemd-reload touch $RPM_BUILD_ROOT%{_sysconfdir}/openvswitch/conf.db touch $RPM_BUILD_ROOT%{_sysconfdir}/openvswitch/system-id.conf %ifarch x86_64 install -d -m 0755 $RPM_BUILD_ROOT%{_libdir}/openvswitch install -p -m 0755 %{dpdkdir}-%{dpdkver}/%{dpdktarget}/lib/librte_pmd_mlx{4,5}_glue.so.* \ $RPM_BUILD_ROOT%{_libdir}/openvswitch/ %endif # remove unpackaged files rm -f $RPM_BUILD_ROOT/%{_bindir}/ovs-benchmark \ $RPM_BUILD_ROOT/%{_bindir}/ovs-docker \ $RPM_BUILD_ROOT/%{_bindir}/ovs-parse-backtrace \ $RPM_BUILD_ROOT/%{_bindir}/ovs-testcontroller \ $RPM_BUILD_ROOT/%{_datadir}/openvswitch/scripts/ovs-monitor-ipsec \ $RPM_BUILD_ROOT/%{_sbindir}/ovs-vlan-bug-workaround \ $RPM_BUILD_ROOT/%{_mandir}/man1/ovs-benchmark.1* \ $RPM_BUILD_ROOT/%{_mandir}/man8/ovs-testcontroller.* \ $RPM_BUILD_ROOT/%{_mandir}/man8/ovs-vlan-bug-workaround.8* # remove ovn unpackages files rm -f $RPM_BUILD_ROOT%{_bindir}/ovn* rm -f $RPM_BUILD_ROOT%{_mandir}/man1/ovn* rm -f $RPM_BUILD_ROOT%{_mandir}/man5/ovn* rm -f $RPM_BUILD_ROOT%{_mandir}/man7/ovn* rm -f $RPM_BUILD_ROOT%{_mandir}/man8/ovn* rm -f $RPM_BUILD_ROOT%{_datadir}/openvswitch/ovn* rm -f $RPM_BUILD_ROOT%{_datadir}/openvswitch/scripts/ovn* rm -f $RPM_BUILD_ROOT%{_includedir}/ovn/* %check export MLX4_GLUE_PATH=$(pwd)/%{dpdkdir}-%{dpdkver}/%{dpdktarget}/lib export MLX5_GLUE_PATH=$(pwd)/%{dpdkdir}-%{dpdkver}/%{dpdktarget}/lib %if %{with check} pushd build-static touch resolv.conf export OVS_RESOLV_CONF=$(pwd)/resolv.conf if make check TESTSUITEFLAGS='%{_smp_mflags}' || make check TESTSUITEFLAGS='--recheck'; then :; else cat tests/testsuite.log exit 1 fi popd %endif %if %{with check_datapath_kernel} pushd build-static if make check-kernel RECHECK=yes; then :; else cat tests/system-kmod-testsuite.log exit 1 fi popd %endif %clean rm -rf $RPM_BUILD_ROOT %preun %if 0%{?systemd_preun:1} %systemd_preun openvswitch.service %else if [ $1 -eq 0 ] ; then # Package removal, not upgrade /bin/systemctl --no-reload disable openvswitch.service >/dev/null 2>&1 || : /bin/systemctl stop openvswitch.service >/dev/null 2>&1 || : fi %endif %pre getent group openvswitch >/dev/null || groupadd -r openvswitch getent passwd openvswitch >/dev/null || \ useradd -r -g openvswitch -d / -s /sbin/nologin \ -c "Open vSwitch Daemons" openvswitch %ifarch %{dpdkarches} getent group hugetlbfs >/dev/null || groupadd hugetlbfs usermod -a -G hugetlbfs openvswitch %endif exit 0 %post if [ $1 -eq 1 ]; then sed -i 's:^#OVS_USER_ID=:OVS_USER_ID=:' /etc/sysconfig/openvswitch %ifarch %{dpdkarches} sed -i \ 's@OVS_USER_ID="openvswitch:openvswitch"@OVS_USER_ID="openvswitch:hugetlbfs"@'\ /etc/sysconfig/openvswitch %endif fi chown -R openvswitch:openvswitch /etc/openvswitch %if 0%{?systemd_post:1} %systemd_post openvswitch.service %else # Package install, not upgrade if [ $1 -eq 1 ]; then /bin/systemctl daemon-reload >dev/null || : fi %endif %postun %if 0%{?systemd_postun:1} %systemd_postun openvswitch.service %else /bin/systemctl daemon-reload >/dev/null 2>&1 || : %endif %triggerun -- openvswitch < 2.5.0-22.git20160727%{?dist} # old rpm versions restart the service in postun, but # due to systemd some preparation is needed. if systemctl is-active openvswitch >/dev/null 2>&1 ; then /usr/share/openvswitch/scripts/ovs-ctl stop >/dev/null 2>&1 || : systemctl daemon-reload >/dev/null 2>&1 || : systemctl stop openvswitch ovsdb-server ovs-vswitchd >/dev/null 2>&1 || : systemctl start openvswitch >/dev/null 2>&1 || : fi exit 0 %if %{with_python2} %files -n %{_py2}-%{pkgname} %{python2_sitearch}/ovs %{python2_sitearch}/ovs-*.egg-info %doc LICENSE %endif %if %{with_python3} %files -n python3-%{pkgname} %{python3_sitearch}/ovs %{python3_sitearch}/ovs-*.egg-info %doc LICENSE %endif %files test %{_bindir}/ovs-pcap %{_bindir}/ovs-tcpdump %{_bindir}/ovs-tcpundump %{_mandir}/man1/ovs-pcap.1* %{_mandir}/man8/ovs-tcpdump.8* %{_mandir}/man1/ovs-tcpundump.1* %if %{with_python2} %{_bindir}/ovs-test %{_bindir}/ovs-vlan-test %{_bindir}/ovs-l3ping %{_mandir}/man8/ovs-test.8* %{_mandir}/man8/ovs-vlan-test.8* %{_mandir}/man8/ovs-l3ping.8* %{python_sitelib}/ovstest %else %exclude %{_mandir}/man8/ovs-test.8* %exclude %{_mandir}/man8/ovs-vlan-test.8* %exclude %{_mandir}/man8/ovs-l3ping.8* %{python3_sitelib}/ovstest %endif %files devel %{_libdir}/*.so %{_libdir}/pkgconfig/*.pc %{_includedir}/openvswitch/* %{_includedir}/openflow/* %exclude %{_libdir}/*.a %exclude %{_libdir}/*.la %if 0%{?rhel} > 7 || 0%{?fedora} > 28 %files -n network-scripts-%{name} %{_sysconfdir}/sysconfig/network-scripts/ifup-ovs %{_sysconfdir}/sysconfig/network-scripts/ifdown-ovs %endif %files %defattr(-,openvswitch,openvswitch) %dir %{_sysconfdir}/openvswitch %{_sysconfdir}/openvswitch/default.conf %config %ghost %verify(not owner group md5 size mtime) %{_sysconfdir}/openvswitch/conf.db %ghost %attr(0600,-,-) %verify(not owner group md5 size mtime) %{_sysconfdir}/openvswitch/.conf.db.~lock~ %config %ghost %{_sysconfdir}/openvswitch/system-id.conf %defattr(-,root,root) %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/sysconfig/openvswitch %{_sysconfdir}/bash_completion.d/ovs-appctl-bashcomp.bash %{_sysconfdir}/bash_completion.d/ovs-vsctl-bashcomp.bash %config(noreplace) %{_sysconfdir}/logrotate.d/openvswitch %{_unitdir}/openvswitch.service %{_unitdir}/ovsdb-server.service %{_unitdir}/ovs-vswitchd.service %{_unitdir}/ovs-delete-transient-ports.service %{_datadir}/openvswitch/scripts/openvswitch.init %{_datadir}/openvswitch/scripts/ovs-check-dead-ifs %{_datadir}/openvswitch/scripts/ovs-lib %{_datadir}/openvswitch/scripts/ovs-save %{_datadir}/openvswitch/scripts/ovs-vtep %{_datadir}/openvswitch/scripts/ovs-ctl %{_datadir}/openvswitch/scripts/ovs-kmod-ctl %{_datadir}/openvswitch/scripts/ovs-systemd-reload %config %{_datadir}/openvswitch/vswitch.ovsschema %config %{_datadir}/openvswitch/vtep.ovsschema %{_bindir}/ovs-appctl %{_bindir}/ovs-dpctl %{_bindir}/ovs-ofctl %{_bindir}/ovs-vsctl %{_bindir}/ovsdb-client %{_bindir}/ovsdb-tool %{_bindir}/ovs-pki %{_bindir}/vtep-ctl %{_libdir}/*.so.* %ifarch x86_64 %dir %{_libdir}/openvswitch %{_libdir}/openvswitch/librte_pmd_mlx4_glue.so.* %{_libdir}/openvswitch/librte_pmd_mlx5_glue.so.* %endif %{_sbindir}/ovs-vswitchd %{_sbindir}/ovsdb-server %{_mandir}/man1/ovsdb-client.1* %{_mandir}/man1/ovsdb-server.1* %{_mandir}/man1/ovsdb-tool.1* %{_mandir}/man5/ovsdb.5* %{_mandir}/man5/ovsdb-server.5.* %{_mandir}/man5/ovs-vswitchd.conf.db.5* %{_mandir}/man5/vtep.5* %{_mandir}/man7/ovsdb-server.7* %{_mandir}/man7/ovsdb.7* %{_mandir}/man7/ovs-actions.7* %{_mandir}/man7/ovs-fields.7* %{_mandir}/man8/vtep-ctl.8* %{_mandir}/man8/ovs-appctl.8* %{_mandir}/man8/ovs-ctl.8* %{_mandir}/man8/ovs-dpctl.8* %{_mandir}/man8/ovs-kmod-ctl.8.* %{_mandir}/man8/ovs-ofctl.8* %{_mandir}/man8/ovs-pki.8* %{_mandir}/man8/ovs-vsctl.8* %{_mandir}/man8/ovs-vswitchd.8* %{_mandir}/man8/ovs-parse-backtrace.8* %{_udevrulesdir}/91-vfio.rules %doc LICENSE NOTICE README.rst NEWS rhel/README.RHEL.rst %ifarch %{dpdkarches} %doc %{dpdkdir}-%{dpdkver}/README.DPDK-PMDS %endif /var/lib/openvswitch %attr(750,openvswitch,openvswitch) %verify(not owner group) /var/log/openvswitch %ghost %attr(755,root,root) %verify(not owner group) %{_rundir}/openvswitch %if %{with_python2} %{_datadir}/openvswitch/bugtool-plugins/ %{_datadir}/openvswitch/scripts/ovs-bugtool-* %{_bindir}/ovs-dpctl-top %{_sbindir}/ovs-bugtool %{_mandir}/man8/ovs-dpctl-top.8* %{_mandir}/man8/ovs-bugtool.8* %else %exclude %{_mandir}/man8/ovs-dpctl-top.8* %endif %if (0%{?rhel} && 0%{?rhel} <= 7) || (0%{?fedora} && 0%{?fedora} < 29) %{_sysconfdir}/sysconfig/network-scripts/ifup-ovs %{_sysconfdir}/sysconfig/network-scripts/ifdown-ovs %endif %changelog * Wed Mar 11 2020 Timothy Redaelli - 2.11.0-50 - Backport "vhost: fix packed virtqueue ready condition" (#1793068) * Tue Mar 10 2020 Timothy Redaelli - 2.11.0-49 - Revert Backport "ovs-tc: support OvS internal port offload" and deps (#1737982) - Revert Backport "netdev-tc-offloads: Use correct hook qdisc at init tc flow" (#1737982) * Tue Feb 25 2020 Maxime Coquelin - 2.11.0-48 - Backport "vhost: fix vring memory partially mapped" (#1798996) - Backport "vhost: protect log address translation in IOTLB update" (#1798996) * Thu Jan 16 2020 Timothy Redaelli - 2.11.0-47 - Backport "netdev-vport: Use the dst_port in tunnel netdev name" (#1727599) * Thu Jan 16 2020 Timothy Redaelli - 2.11.0-46 - Backport "dpif-netlink: Allow offloading of flows with dl_type 0x1234." (#1722337) * Thu Jan 16 2020 Timothy Redaelli - 2.11.0-45 - Backport "lib/tc: Support optional tunnel id" (#1732305) Backport "lib/tc: Fix flow dump for tunnel id equal zero" (#1732305) * Wed Jan 15 2020 Timothy Redaelli - 2.11.0-44 - Backport "tc: implement support for action flags" (#1780690) * Wed Jan 15 2020 Timothy Redaelli - 2.11.0-43 - Backport "rhel: secure openvswitch useropts" (#1785586) - Backport "rhel: run ovn with the same user as ovs" (#1785586) - Backport "rhel: set useropts optional for ovsdb-server" (#1785586) - Backport "rhel: let *-ctl handle runtime directory" (#1785586) * Tue Jan 14 2020 Eelco Chaudron - 2.11.0-42 - Backport "userspace: Improved packet drop statistics" (#1726568) * Tue Jan 14 2020 Kevin Traynor - 2.11.0-41 - Detailed packet drop statistics and related patches (#1790841) - Backport "netdev-dpdk: Fix not reporting rx_oversize_errors in stats." (#1790841) - Backport "netdev-dpdk: Refactor vhost custom stats for extensibility." (#1790841) - Backport "netdev-dpdk: Reuse vhost function for dpdk ETH custom stats." (#1790841) - Backport "netdev-dpdk: Detailed packet drop statistics." (#1790841) - Backport "netdev-dpdk: Fix sw stats perf drop." (#1790841) * Fri Jan 10 2020 Adrián Moreno - 2.11.0-40 - Backport "vhost: fix virtqueue not accessible" (#1792399) - Backport "vhost: prevent zero copy mode if IOMMU is on" (#1792399) - Backport "vhost: convert buffer addresses to GPA for logging" (#1792399) - Backport "vhost: translate incoming log address to GPA" (#1792399) - Backport "vhost: fix vring address handling during live migration" (#1792399) - Backport "vhost: add external message handling to the API" (#1792399) * Wed Jan 08 2020 Numan Siddique - 2.11.0-39 - Backport "ovsdb replication: Provide option to configure probe interval" (#1788800) * Tue Jan 07 2020 David Marchand - 2.11.0-38 - Backport DPDK interrupt fixes for qede (#1738789) * Mon Dec 23 2019 Eelco Chaudron - 2.11.0-37 - Backport "vhost: add device op when notification to guest is sent" (#1726579) - Backport "netdev-dpdk: Add coverage counter to count vhost IRQs" (#1726579) * Mon Dec 23 2019 Eelco Chaudron - 2.11.0-36 - Backport "net/i40e: downgrade error log" (#1719644) - Backport "net/i40e: re-program promiscuous mode on VF interface" (#1733402) - Backport "bridge: Allow manual notifications about interfaces' updates" (#1719644) - Backport "netdev-dpdk: add support for the RTE_ETH_EVENT_INTR_RESET" (#1719644) * Tue Dec 10 2019 Timothy Redaelli - 2.11.0-35 - Fix librte_pmd_mlx{4,5}_glue.so error in Execshield part of RPMDiff by backporting the DPDK flags from dpdk spec file. * Fri Dec 06 2019 Timothy Redaelli - 2.11.0-34 - Backport "Shutdown SSL connection before closing socket" (#1780745) * Thu Dec 05 2019 Aaron Conole - 2.11.0-33 - Backport "ovs-check-dead-ifs: python3 print format" (#1751161) - Backport "ovs-check-dead-ifs: unshadow pid variable" (#1751161) - Backport "flake8: also check the ovs-check-dead-ifs script" (#1751161) * Thu Dec 05 2019 Aaron Conole - 2.11.0-32 - Backport "ovs-tcpundump: exit when getting version" (#1764127) * Thu Dec 05 2019 Aaron Conole - 2.11.0-31 - Backport "ovs-tcpundump: allow multiple packet lengths" (#1764125) * Tue Dec 03 2019 Timothy Redaelli - 2.11.0-30 - Rebase internal DPDK to 18.11.5 (#1760246) (CVE-2019-14818) * Tue Nov 26 2019 Lorenzo Bianconi - 2.11.0-29 - Backport "jsonrpc: increase input buffer size from 512 to 4096" (#1776883) * Tue Nov 12 2019 David Marchand - 2.11.0-28 - Backport "netdev-dpdk: Track vhost tx contention." (#1740144) * Tue Oct 29 2019 Numan Siddique - 2.11.0-27 - Backport "ovsdb-server: Allow replication from older schema version servers" (#1766586) * Mon Oct 14 2019 Numan Siddique - 2.11.0-26 - Backport "ovsdb-server: Don't drop all connections on read/write status change" (#1761572) * Mon Oct 14 2019 Dumitru Ceara - 2.11.0-25 - Backport "ofproto-dpif: Fix continuation with patch port" (#1761461) * Mon Oct 07 2019 Aaron Conole - 2.11.0-24 - Backport "vswitch: ratelimit the device add log" (#1737146) * Fri Sep 13 2019 Kevin Traynor - 2.11.0-23 - Backport "Add custom stat for vhost tx retries." (#1747531) - Backport "Enable tx-retries-max config." (#1747531) * Tue Sep 03 2019 Flavio Leitner - 2.11.0-22 - tnl-neigh: Use outgoing ofproto version (#1685642) * Tue Aug 27 2019 Flavio Leitner - 2.11.0-21 - Bump release * Tue Aug 06 2019 David Marchand - 2.11.0-20 - Renumbered dpdk patches - Backport IOVA fixes (#1711739) * Tue Jul 23 2019 Numan Siddique - 2.11.0-19 - Backport "ovsdb-server: drop all connections on read/write status change" (#1720947) * Tue Jul 16 2019 Timothy Redaelli - 2.11.0-18 - Increase CONFIG_RTE_MAX_ETHPORTS to 128 (#1730421) * Tue Jul 16 2019 Timothy Redaelli - 2.11.0-17 - Backport "tunnel: Add layer 2 IPv6 GRE encapsulation support." and "netdev-vport: Make ip6gre netdev type to use TC rules" (#1725623) * Fri Jul 12 2019 Timothy Redaelli - 2.11.0-16 - Rebase internal DPDK to 18.11.2 (#1713698) * Tue Jul 09 2019 David Marchand - 2.11.0-15 - Backport "net/i40e: fix dropped packets statistics name" (#1728610) * Tue Jul 02 2019 Timothy Redaelli - 2.11.0-14 - Backport "netdev-tc-offloads: Use correct hook qdisc at init tc flow" (#1721219) * Fri Jun 21 2019 Timothy Redaelli - 2.11.0-13 - Backport "netdev-tc-offloads: Support match on priority tags" (#1722249) * Thu Jun 13 2019 Maxime Coquelin - 2.11.0-12 - Backport Vhost performance regression fixes (#1672538) * Thu Jun 13 2019 Flavio Leitner - 2.11.0-11 - Backport "rhel: limit stack size to 2M." (#1720315) * Thu May 16 2019 Pablo Cascón - 2.11.0-10 - Backport "ovs-tc: support OvS internal port offload" and deps (#1702334) * Wed Apr 24 2019 Numan Siddique - 2.11.0-9 - Backport "[OVN] Fragmentation support - check_pkt_larger action" (#1702564) * Thu Apr 11 2019 Kevin Traynor - 2.11.0-8 - Backport "net/qede: support IOVA VA mode" (#1684605) * Wed Apr 10 2019 David Marchand - 2.11.0-7 - Backport cpu affinity fixes (#1687320) * Tue Apr 09 2019 Timothy Redaelli - 2.11.0-6 - Add missing dependencies for ovs-tcpdump (#1697978) * Tue Mar 26 2019 Flavio Leitner - 2.11.0-5 - fixed netlink msg corruption when updating netdev. (#1692812) * Tue Mar 12 2019 Davide Caratti - 2.11.0-4 - Backport "net/bnxt: support IOVA VA mode" (#1645523) * Tue Mar 12 2019 Timothy Redaelli - 2.11.0-3 - Backport "ovs-ctl: Permit to specify additional options" (#1687775) - Remove useless -fPIC from DPDK * Fri Mar 01 2019 Timothy Redaelli - 2.11.0-2 - Backport "rhel: Use PIDFile on forking systemd service files" (#1684477) * Thu Feb 28 2019 Timothy Redaelli - 2.11.0-1 - Update to official 2.11 release * Thu Jan 31 2019 Open vSwitch Bot - 2.11.0-0.20190129gitd3a10db - Snapshot of branch-2.11 d3a10db4fd38 * Sun Jan 27 2019 Open vSwitch Bot - 2.11.0-0.20190126gitd4ff5b2 - Snapshot of branch-2.11 d4ff5b2be7fc * Mon Jan 14 2019 Timothy Redaelli - 2.11.0-0.20190114gitadb3f0b - Update to a snapshot of OVS 2.11 from master * Mon Jan 7 2019 Lorenzo Bianconi - 2.10.0-42 - Backport "OVN: add static IP support to IPAM" (#1664028) * Thu Jan 03 2019 Timothy Redaelli - 2.10.0-41 - Backport some patches to improve offload indications (#1655990) * Wed Jan 02 2019 Timothy Redaelli - 2.10.0-40 - Add "Requires: openvswitch = %%{version}-%%{release}" to python-openvswitch2.10 (#1662944) * Wed Jan 2 2019 Lorenzo Bianconi - 2.10.0-39 - Backport "OVN: add mac address only support to IPAM/MACAM" (#1662905) * Thu Dec 20 2018 Numan Siddique - 2.10.0-38 - Backport "ovn-controller: Inject GARPs to logical switch pipeline to update neighbors" (#1643902) * Tue Dec 18 2018 David Marchand - 2.10.0-37 - Backport 'ovs-ctl: fix system-id.conf owner' (#1659391) - Do not check /var/log/openvswitch owner/group (#1659391) * Tue Dec 18 2018 Numan Siddique - 2.10.0-36 - Backport "ovn: Fix the invalid eth.dst and ip6.dst set by nd_ns action for certain cases." (#1656018) * Mon Dec 10 2018 Timothy Redaelli - 2.10.0-35 - Backport "dpif-netdev: Add vlan to mask for flow_put operation" (#1649516) * Tue Nov 27 2018 Numan Siddique - 2.10.0-34 - Backport "ovn: Avoid tunneling for VLAN packets redirected to a gateway chassis" (#1561880) * Fri Nov 23 2018 Eelco Chaudron - 2.10.0-33 - Backport "mem: fix memory initialization time" (#1647498) * Thu Nov 22 2018 Timothy Redaelli - 2.10.0-32 - Backport "tests: Use the default key length when generating RSA keys" * Wed Nov 14 2018 Timothy Redaelli - 2.10.0-31 - Backport "net/qede: fix crash when configure fails" (#1648183) * Tue Nov 13 2018 Lorenzo Bianconi - 2.10.0-30 - Backport 'pinctrl: Fix dp_packet structure leak' and 'pinctrl: Fix crash on buffered packets hmap double remove'. Moreover align 'ovn -- 3 HVs, 3 LS, 3 lports/LS, 1 LR' test to upstream one (#1649008) * Tue Nov 13 2018 Eelco Chaudron - 2.10.0-29 - Backup "netdev-dpdk: Bring link down when NETDEV_UP is not set" (#1645288) * Fri Nov 09 2018 Lorenzo Bianconi - 2.10.0-28 - OVN: configure L2 address according to the used IP address (#1648272) * Thu Nov 08 2018 Timothy Redaelli - 2.10.0-27 - Backport "bond: Honor updelay and downdelay when LACP is in use" (#1646923) * Thu Nov 08 2018 Lorenzo Bianconi - 2.10.0-26 - OVN: introduce mac_prefix support to IPAM (#1647750) * Tue Nov 06 2018 Timothy Redaelli - 2.10.0-25 - Backport "ofproto-dpif-xlate: Avoid deadlock on multicast snooping recursion" (#1643065) * Tue Nov 06 2018 Timothy Redaelli - 2.10.0-24 - Re-enable "make check" * Fri Nov 02 2018 Kevin Traynor - 2.10.0-23 - Update to DPDK 17.11.4 (#1566069) * Thu Oct 25 2018 Timothy Redaelli - 2.10.0-22 - Ship statically linked OVS binaries (#1643478) * Tue Oct 23 2018 Numan Siddique - 2.10.0-21 - Backport connmgr: Fix vswitchd abort when a port is added and the controller is down (#1637926) * Mon Oct 22 2018 Timothy Redaelli - 2.10.0-20 - Backport "ovn: Add DHCP support for option 252" (#1641740) * Wed Oct 17 2018 Timothy Redaelli - 2.10.0-19 - Backport "net/i40e: fix VLAN offload setting issue" (#1637893) * Wed Oct 17 2018 Timothy Redaelli - 2.10.0-18 - Backport "Python: Make Row's __getattr__ less error prone" (#1639963) * Fri Oct 12 2018 Numan Siddique - 2.10.0-17 - OVN: ovn-ctl: Fix the wrong pidfile argument passed to ovsdb-servers (#1636714) * Fri Oct 12 2018 Numan Siddique - 2.10.0-16 - OVN: Support processing DHCPv6 information request message type (#1636874) * Fri Oct 12 2018 Numan Siddique - 2.10.0-15 - OVN: Fix IPv6 DAD failure for container ports (#1616129) * Thu Oct 11 2018 Numan Siddique - 2.10.0-14 - OVN: Fix the issue in IPv6 Neigh Solicitation responder for router IPs (#1567735) * Tue Oct 09 2018 Lorenzo Bianconi - 2.10.0-13 - OVN: add buffering support for ip packets (#1637466) * Mon Oct 08 2018 Matteo Croce - 2.10.0-12 - Fix null pointer (#1634015) * Tue Oct 02 2018 Lorenzo Bianconi - 2.10.0-11 - OVN: add CT_LB action to ovn-trace (#1635344) * Mon Oct 01 2018 Timothy Redaelli - 2.10.0-10 - Backport NFP PMD's non-root related commits for > 1TB of RAM (#1634820): - net/nfp: support IOVA VA mode - bus/pci: forbid IOVA mode if IOMMU address width too small - net/nfp: check hugepages IOVAs based on DMA mask - mem: use address hint for mapping hugepages - bus/pci: use IOVAs check when setting IOVA mode - mem: add function for checking memsegs IOVAs addresses - mem: fix max DMA maskbit size * Thu Sep 27 2018 Matteo Croce - 2.10.0-9 - Backport "Remove support for multiple queues per port" (#1634015) * Wed Sep 26 2018 Matteo Croce - 2.10.0-8 - Backport EMC reorder fix (#1565205) * Wed Sep 26 2018 Matteo Croce - 2.10.0-7 - Backport per-port socket netlink creation with EPOLLEXCLUSIVE (#1634015) * Fri Sep 21 2018 Kevin Traynor - 2.10.0-6 - Backport roundrobin rxq to pmd assignment (#1631797) * Fri Sep 14 2018 Timothy Redaelli - 2.10.0-5 - Backport "ovs-save: Don't always include the default flow during restore" (#1628905) * Thu Sep 13 2018 Flavio Leitner - 2.10.0-4 - applied Fix translation of groups with no buckets (#1626488) * Thu Sep 13 2018 Flavio Leitner - 2.10.0-3 - Removed provides and obsoletes for openvswitch-dpdk (#1628603) * Tue Sep 11 2018 Timothy Redaelli - 2.10.0-2 - Backported "net/mlx{4,5}: avoid stripping the glue library" (#1627700) * Tue Aug 21 2018 Flavio Leitner - 2.10-1 - Updated with 2.10.0 official tarball (#1618551) * Fri Aug 17 2018 Flavio Leitner - 2.10-0 - Sync'ed with fd-next (4452afaa58) - vhost: flush IOTLB cache on new mem table handling (#1609643) - OVN: introduce ovs-appctl command to monitor HVs sb (#1593804) * Thu Aug 16 2018 Open vSwitch Bot - 2.10-0 - Snapshot of branch-2.10 6bced903bb50 * Fri Aug 10 2018 Open vSwitch Bot - 2.10-0 - Snapshot of branch-2.10 58a7ce60b9f7 * Wed Aug 08 2018 Open vSwitch Bot - 2.10-0 - Snapshot of branch-2.10 faf64fb8861f * Tue Aug 07 2018 Flavio Leitner - 2.10-0 - Snapshot of branch master 7a78d1c1ad73 * Tue Jul 31 2018 Flavio Leitner - 2.10-0 - Sync'ed spec file with fd-next-57 (shared linking). (DPDK patches not included) - Fixed package dependencies (#1610603) * Fri Jul 27 2018 Open vSwitch Bot - 2.10-0 - Snapshot of branch master b1ca64f020f7 * Fri Jul 27 2018 Flavio Leitner - 2.10-0 - Replace macro %%{name} with 'openvswitch'. * Tue Jul 24 2018 Open vSwitch Bot - 2.10-0 - Snapshot of branch master 1ac690899592 * Tue Jul 24 2018 Flavio Leitner - 2.10-0 - Versioned conflict to be less than 2.10. * Thu Jul 19 2018 Open vSwitch Bot - 2.10-0 - Snapshot of branch master 3c921cc2b6b7 * Wed Jul 18 2018 Flavio Leitner - 2.10-0 - Fixed unbound requires and buildrequires. * Tue Jul 10 2018 Open vSwitch Bot - 2.10-0 - Snapshot of branch master 93c0ef12039c * Tue Jul 03 2018 Open vSwitch Bot - 2.10-0 - Snapshot of branch master 79d0dfa4e99a * Wed Jun 27 2018 Open vSwitch Bot - 2.10-0 - Snapshot of branch master e46148133067 * Wed Jun 27 2018 Open vSwitch Bot - 2.10-0 - Snapshot of branch master 61677bf976e9 * Tue Jun 26 2018 Flavio Leitner - 2.10-0 - snapshot of branch master * Mon Jun 11 2018 Aaron Conole - 2.9.0-47 - Backport "net/mlx5: fix memory region cache lookup" (#1581230) - Backport "net/mlx5: fix memory region boundary checks" (#1581230) * Mon Jun 11 2018 Timothy Redaelli - 2.9.0-46 - Backport "net/qede: fix memory alloc for multiple port reconfig" (#1589866) * Thu Jun 07 2018 Timothy Redaelli - 2.9.0-45 - Backport "net/qede: fix unicast filter routine return code" (#1578590) * Thu Jun 07 2018 Timothy Redaelli - 2.9.0-44 - Backport "net/qede: fix L2-handles used for RSS hash update" (#1578981) * Tue May 29 2018 Timothy Redaelli - 2.9.0-43 - Backport "net/nfp: fix lock file usage" (#1583670) * Mon May 28 2018 Timothy Redaelli - 2.9.0-42 - Backport "net/nfp: configure default RSS reta table" (#1583161) * Mon May 28 2018 Timothy Redaelli - 2.9.0-41 - Backport "netdev-dpdk: don't enable scatter for jumbo RX support for nfp" (#1578324) * Mon May 28 2018 Timothy Redaelli - 2.9.0-40 - Backport "ovn pacemaker: Fix promotion issue when the master node is reset" (#1579025) * Thu May 24 2018 Timothy Redaelli - 2.9.0-39 - Backport spec file modfications from "rhel: Use openvswitch user/group for the log directory" * Wed May 23 2018 Maxime Coquelin - 2.9.0-38 - Backport "vhost: improve dirty pages logging performance" (#1552465) * Wed May 16 2018 Timothy Redaelli - 2.9.0-37 - Backport "ovn: Set proper Neighbour Adv flag when replying for NS request for router IP" (#1567735) * Mon May 14 2018 Timothy Redaelli - 2.9.0-36 - Enable QEDE PMDs (only on x86_64) (#1578003) * Thu May 10 2018 Lorenzo Bianconi - 2.9.0-35 - ovn-nbctl: Show gw chassis in decreasing prio order (#1576725) * Wed May 09 2018 Timothy Redaelli - 2.9.0-34 - Fix hugetlbfs group when DPDK is enabled * Wed May 09 2018 Timothy Redaelli - 2.9.0-33 - Backport "eal: abstract away the auxiliary vector" (#1560728) - Re-enable DPDK on ppc64le * Wed May 09 2018 Aaron Conole - 2.9.0-32 - Require the selinux policy module (#1555440) * Tue May 08 2018 Timothy Redaelli - 2.9.0-31 - Backport fix QEDE PMD (#1494616) * Tue May 08 2018 Timothy Redaelli - 2.9.0-30 - Backport "net/nfp: fix mbufs releasing when stop or close" (#1575067) * Sun May 06 2018 Timothy Redaelli - 2.9.0-29 - Backport net/mlx4: fix broadcast Rx (#1568908) * Fri May 04 2018 Kevin Traynor - 2.9.0-28 - Backport mempool use after free fix and debug (#1575016) * Fri May 04 2018 Aaron Conole - 2.9.0-27 - Fix the email address in the changelog. * Wed May 02 2018 Aaron Conole - 2.9.0-26 - Backport fix for missing user during install/upgrade (#1559374) * Mon Apr 30 2018 Jakub Sitnicki - 2.9.0-25 - Backport fix for Unicode encoding in Python IDL (#1547065) * Thu Apr 26 2018 Aaron Conole - 2.9.0-24 - Backport the cisco enic patches * Thu Apr 26 2018 Timothy Redaelli - 2.9.0-23 - Backport a fix for "Offload of Fragment Matching in OvS Userspace" (#1559111) * Thu Apr 26 2018 Timothy Redaelli - 2.9.0-22 - Backport "ovn-controller: Handle Port_Binding's "requested-chassis" option" (#1559222) * Thu Apr 26 2018 Timothy Redaelli - 2.9.0-21 - Backport "python: avoid useless JSON conversion to enhance performance" (#1551016) * Thu Apr 26 2018 Timothy Redaelli - 2.9.0-20 - Backport "ovn: Set router lifetime value for IPv6 periodic RA" (#1567735) - Remove useless libpcap-devel dependency * Mon Apr 23 2018 Kevin Traynor - 2.9.0-19 - Backport DPDK CVE-2018-1059 (#1544298) * Fri Apr 20 2018 Davide Caratti - 2.9.0-18 - Backport fix for PMD segfault when BNXT receives tunneled traffic (#1567634) * Mon Apr 16 2018 Timothy Redaelli - 2.9.0-17 - Backport patches to make NFP detect the correct firmware (#1566712) - Backport "rhel: Fix literal dollar sign usage in systemd service files" * Fri Mar 30 2018 Timothy Redaelli - 2.9.0-16 - Backport "rhel: don't drop capabilities when running as root" - Change owner of /etc/openvswitch during upgrade * Tue Mar 27 2018 Timothy Redaelli - 2.9.0-14 - Disable DPDK on ppc64le * Sun Mar 25 2018 Timothy Redaelli - 2.9.0-13 - Disable DPDK on aarch64 * Thu Mar 22 2018 Flavio Leitner - 2.9.0-12 - fixes i40e link status timeout trough direct register access (#1559612) * Thu Mar 22 2018 Timothy Redaelli - 2.9.0-11 - Enable BNXT, MLX4, MLX5 and NFP (aligned from FDB) * Thu Mar 22 2018 Timothy Redaelli - 2.9.0-10 - Backport "Offload of Fragment Matching in OvS Userspace" (#1559111) * Thu Mar 15 2018 Timothy Redaelli - 2.9.0-9 - Avoid to unpack openvswitch 2 times and to overwrite all the patched files Fixes 2.9.0-4 * Thu Mar 08 2018 Eric Garver - 2.9.0-8 - Backport "ofproto-dpif-xlate: translate action_set in clone action" (#1544892) * Thu Mar 08 2018 Timothy Redaelli - 2.9.0-7 - Backport "ovn: Calculate UDP checksum for DNS over IPv6" (#1553023) * Tue Mar 06 2018 Aaron Conole - 2.9.0-6 - Require the latest rhel selinux policy (#1549673) * Fri Mar 02 2018 Matteo Croce - 2.9.0-5 - Backport vhost patches (#1541881) * Fri Mar 02 2018 Timothy Redaelli - 2.9.0-4 - Don't require python-sphinx directly, but built it since python-sphinx is in the optional repository that is not available on RHEV and TPS test fails. * Tue Feb 20 2018 Timothy Redaelli - 2.9.0-3 - Don't verify the user and group of /etc/openvswitch and /etc/sysconfig/openvswitch This is needed since we cannot change the user and group if you upgrade from an old version that still uses root:root. * Tue Feb 20 2018 Timothy Redaelli - 2.9.0-1 - Update to OVS 2.9.0 + DPDK 17.11 (#1475436) - Backport of ofproto-dpif: Delete system tunnel interface when remove ovs bridge (#1505776) - Backport DPDK patches from FDB (vhost user async fix and enic fixes) - Backport 94cd8383e297 and 951d79e638ec to fix permissions (#1489465) - Use a static configuration file for DPDK * Fri Jan 12 2018 Timothy Redaelli - 2.7.3-3.git20180112 - Rebase to latest OVS branch-2.7 fixes + DPDK 16.11.4 (#1533872) * Wed Oct 18 2017 Timothy Redaelli - 2.7.3-2.git20171010 - Remove ovs-test and ovs-vlan-test from openvswitch-test package - Add an option to enable openvswitch-ovn-docker package (disabled by default) * Tue Oct 10 2017 Timothy Redaelli - 2.7.3-1.git20171010 - Update to OVS 2.7.3 + branch-2.7 bugfixes (#1502742) * Mon Sep 18 2017 Kevin Traynor - 2.7.2-10.git20170914 - Backport of fix for i40e flow control get (#1491791) * Thu Sep 14 2017 Timothy Redaelli - 2.7.2-9.git20170914 - Rebase to latest OVS branch fixes + DPDK 16.11.3 * Wed Sep 06 2017 Timothy Redaelli - 2.7.2-8.git20170719 - Backport of enic driver crash fix to dpdk-16.11 (#1489010) * Tue Aug 22 2017 Aaron Conole - 2.7.2-7.git20170719 - Re-enable Cisco enic PMD (#1482675) * Tue Aug 22 2017 Aaron Conole - 2.7.2-6.git20170719 - Update based on multi-arch * Tue Aug 22 2017 Aaron Conole - 2.7.2-5.git20170719 - Disable unsupported PMDs (#1482675) - software and hardware PMDs audited by the team * Thu Aug 03 2017 John W. Linville - 2.7.2-4.git20170719 - Backport mmap fix for memory initialization on ppc64le to dpdk-16.11 * Thu Aug 03 2017 John W. Linville - 2.7.2-3.git20170719 - Backport support for vfio-pci based PMD in ppc64le to dpdk-16.11 * Thu Aug 03 2017 John W. Linville - 2.7.2-2.git20170719 - Backport support for Intel XL710 (i40e) pmd in ppc64le to dpdk-16.11 * Wed Jul 19 2017 Timothy Redaelli - 2.7.2-1.git20170719 - Update to OVS 2.7.2 + branch-2.7 bugfixes (#1472854) - Add a symlink of the OCF script in the OCF resources folder (#1472729) * Mon Jul 10 2017 Timothy Redaelli - 2.7.1-1.git20170710 - Align to FDB openvswitch-2.7.1-1.git20170710.el7fdb (#1459286) * Wed Jun 07 2017 Timothy Redaelli - 2.6.1-20.git20161206 - backport "mcast-snooping: Avoid segfault for vswitchd" (#1456356) - backport "mcast-snooping: Flush ports mdb when VLAN cfg changed." (#1456358) * Sun May 21 2017 Lance Richardson - 2.6.1-19.git20161206 - backport patch to not automatically restard ovn svcs after upgrade (#1438901) * Tue May 09 2017 Timothy Redaelli - 2.6.1-18.git20161206 - rconn: Avoid abort for ill-behaved remote (#1449109) * Fri May 05 2017 Timothy Redaelli - 2.6.1-17.git20161206 - Fix race in "PMD - change numa node" test (#1447714) - Report only un-deleted groups in group stats replies. (#1447724) - Workaround some races in "ofproto - asynchronous message control" tests (#1448536) * Mon Apr 10 2017 Eric Garver - 2.6.1-16.git20161206 - Fix an issue using set_field action on nw_ecn (#1410715) * Fri Mar 31 2017 Kevin Traynor - 2.6.1-15.git20161206 - backport patch to fix uni-dir vhost perf drop (#1414919) * Wed Mar 29 2017 Lance Richardson - 2.6.1-14.git20161206 - backport patch to correct port number in firewalld service file (#1390938) * Fri Mar 10 2017 Timothy Redaelli - 2.6.1-13.git20161206 - backport patch to enable/disable libcap-ng support (--with libcapng) * Thu Mar 09 2017 Aaron Conole - 2.6.1-12.git20161206 - Fix an MTU issue with ovs mirror ports (#1426342) * Wed Mar 08 2017 Lance Richardson - 2.6.1-11.git20161206 - update spec file to install firewalld service files (#1390938) * Thu Feb 16 2017 Aaron Conole - 2.6.1-10.git20161206 - vhostuser client mode support for ifup/ifdown (#1418957) * Thu Feb 16 2017 Lance Richardson - 2.6.1-9.git20161206 - OVN-DHCP is not sending DHCP responses after a MAC change in north db (#1418261) * Thu Feb 16 2017 Timothy Redaelli - 2.6.1-8.git20161206 - systemd service starts too fast (#1422227) * Fri Feb 10 2017 Lance Richardson - 2.6.1-7.git20161206 - iptables should be easily configurable for OVN hosts and OVN central server (#1390938) * Thu Feb 09 2017 Aaron Conole - 2.6.1-6.git20161206 - ovn: IPAM has no reply to DHCP request for renewal (#1415449) * Tue Feb 07 2017 Timothy Redaelli - 2.6.1-5.git20161206 - ovn-controller: Provide the option to set Encap.options:csum (#1418742) * Mon Feb 06 2017 Flavio Leitner 2.5.0-23.git20160727 - fixed broken service after a package upgrade (#1403958) * Wed Dec 21 2016 Lance Richardson 2.6.1-3.git20161206 - ovsdb-idlc: Initialize nonnull string columns for inserted rows. (#1405094) * Fri Dec 09 2016 Lance Richardson 2.6.1-2.git20161206 - OVN: Support IPAM with externally specified MAC (#1368043) * Tue Dec 06 2016 Kevin Traynor 2.6.1-1.git20161206 - Update to OVS 2.6.1 + branch-2.6 bugfixes (#1335865) - Update to use DPDK 16.11 (#1335865) - Enable OVN * Tue Nov 22 2016 Flavio Leitner 2.5.0-22.git20160727 - ifnotifier: do not wake up when there is no db connection (#1397504) * Tue Nov 22 2016 Flavio Leitner 2.5.0-21.git20160727 - Use instant sending instead of queue (#1397481) * Mon Nov 21 2016 Flavio Leitner 2.5.0-20.git20160727 - dpdk vhost: workaround stale vring base (#1376217) * Thu Oct 20 2016 Aaron Conole - 2.5.0-19.git20160727 - Applied tnl fix (#1346232) * Tue Oct 18 2016 Aaron Conole - 2.5.0-18.git20160727 - Applied the systemd backports * Tue Oct 18 2016 Flavio Leitner - 2.5.0-17.git20160727 - Fixed OVS to not require SSSE3 if DPDK is not used (#1378501) * Tue Oct 18 2016 Flavio Leitner - 2.5.0-16.git20160727 - Fixed a typo (#1385096) * Tue Oct 18 2016 Flavio Leitner - 2.5.0-15.git20160727 - Do not restart the service after a package upgrade (#1385096) * Mon Sep 26 2016 Panu Matilainen - 2.5.0-14.git20160727 - Permit running just the kernel datapath tests (#1375660) * Wed Sep 14 2016 Panu Matilainen - 2.5.0-13.git20160727 - Obsolete openvswitch-dpdk < 2.6.0 to provide migration path - Add spec option to run kernel datapath tests (#1375660) * Fri Sep 09 2016 Panu Matilainen - 2.5.0-12.git20160727 - Backport ovs-tcpdump support (#1335560) - Add ovs-pcap, ovs-tcpdump and ovs-tcpundump to -test package * Thu Sep 08 2016 Panu Matilainen - 2.5.0-11.git20160727 - Add openvswitch-dpdk provide for testing and depending on dpdk-enablement - Disable bnx2x driver, it's not stable - Build dpdk with -Wno-error to permit for newer compilers - Drop subpkgs conditional from spec, its not useful anymore * Fri Aug 26 2016 Panu Matilainen - 2.5.0-10.git20160727 - Fix adding ukeys for same flow by different pmds (#1364898) * Thu Jul 28 2016 Flavio Leitner - 2.5.0-9.git20160727 - Fixed ifup-ovs to support DPDK Bond (#1360426) * Thu Jul 28 2016 Flavio Leitner - 2.5.0-8.git20160727 - Fixed ifup-ovs to delete the ports first (#1359890) * Wed Jul 27 2016 Flavio Leitner - 2.5.0-7.git20160727 - pull bugfixes from upstream 2.5 branch (#1360431) * Tue Jul 26 2016 Flavio Leitner - 2.5.0-6.git20160628 - Removed redundant provides for openvswitch - Added epoch to the provides for -static package * Thu Jul 21 2016 Flavio Leitner - 2.5.0-5.git20160628 - Renamed to openvswitch (dpdk enabled) - Enabled sub-packages - Removed conflicts to openvswitch - Increased epoch to give this package preference over stable * Tue Jun 28 2016 Panu Matilainen - 2.5.0-4.git20160628 - pull bugfixes from upstream 2.5 branch (#1346313) * Wed Apr 27 2016 Panu Matilainen - 2.5.0-4 - Enable DPDK bnx2x driver (#1330589) - Add README.DPDK-PMDS document listing drivers included in this package * Thu Mar 17 2016 Flavio Leitner - 2.5.0-3 - Run testsuite by default on x86 arches (#1318786) (this sync the spec with non-dpdk version though the testsuite was already enabled here) * Thu Mar 17 2016 Panu Matilainen - 2.5.0-2 - eliminate debuginfo-artifacts (#1281913) * Thu Mar 17 2016 Panu Matilainen - 2.5.0-1 - Update to OVS to 2.5.0 and bundled DPDK to 2.2.0 (#1317889) * Mon Nov 23 2015 Panu Matilainen - Provide openvswitch ver-rel (#1281894) * Thu Aug 13 2015 Flavio Leitner - ExclusiveArch to x86_64 (dpdk) - Provides bundled(dpdk) - Re-enable testsuite * Fri Aug 07 2015 Panu Matilainen - Enable building from pre-release snapshots, update to pre 2.4 version - Bundle a minimal, private build of DPDK 2.0 and link statically - Rename package to openvswitch-dpdk, conflict with regular openvswitch - Disable all sub-packages * Wed Jan 12 2011 Ralf Spenneberg - First build on F14