meta-virtualization/recipes-networking/openvswitch/openvswitch_git.bb
Zqiang 415fd5eb2c openvswitch: uprev from 2.13 to 2.15
- OVSDB:
     * Changed format in which ovsdb transactions are stored in database files.
       Now each transaction contains diff of data instead of the whole new
       value of a column.
       New ovsdb-server process will be able to read old database format, but
       old processes will *fail* to read database created by the new one.
       For cluster and active-backup service models follow upgrade instructions
       in 'Upgrading from version 2.14 and earlier to 2.15 and later' section
       of ovsdb(7).
     * New unixctl command 'ovsdb-server/get-db-storage-status' to show the
       status of the storage that's backing a database.
     * New unixctl command 'ovsdb-server/memory-trim-on-compaction on|off'.
       If turned on, ovsdb-server will try to reclaim all the unused memory
       after every DB compaction back to OS.  Disabled by default.
     * Maximum backlog on RAFT connections limited to 500 messages or 4GB.
       Once threshold reached, connection is dropped (and re-established).
       Use the 'cluster/set-backlog-threshold' command to change limits.
- DPDK:
     * Removed support for vhost-user dequeue zero-copy.
     * Add support for DPDK 20.11.
- Userspace datapath:
     * Add the 'pmd' option to "ovs-appctl dpctl/dump-flows", which
       restricts a flow dump to a single PMD thread if set.
     * New 'options:dpdk-vf-mac' field for DPDK interface of VF ports,
       that allows configuring the MAC address of a VF representor.
     * Add generic IP protocol support to conntrack. With this change, all
       none UDP, TCP, and ICMP traffic will be treated as general L3
       traffic, i.e. using 3 tupples.
     * Add parameters 'pmd-auto-lb-load-threshold' and
       'pmd-auto-lb-improvement-threshold' to configure PMD auto load balance
        behaviour.
- The environment variable OVS_UNBOUND_CONF, if set, is now used
     as the DNS resolver's (unbound) configuration file.
- Linux datapath:
     * Support for kernel versions up to 5.8.x.
- Terminology:
     * The terms "master" and "slave" have been replaced by "primary" and
       "secondary", respectively, for OpenFlow connection roles.
     * The term "slave" has been replaced by "member", for bonds, LACP, and
       OpenFlow bundle actions.
- Support for GitHub Actions based continuous integration builds has been
     added.
- Bareudp Tunnel
     * Bareudp device support is present in linux kernel from version 5.7
     * Kernel bareudp device is not backported to ovs tree.
     * Userspace datapath support is not added
- ovs-dpctl and 'ovs-appctl dpctl/':
     * New commands '{add,mod,del}-flows' where added, which allow adding,
       deleting, or modifying flows based on information read from a file.
- IPsec:
     * Add option '--no-cleanup' to allow ovs-monitor-ipsec to stop without
       tearing down IPsec tunnels.
     * Add option '--no-restart-ike-daemon' to allow ovs-monitor-ipsec to start
       without restarting ipsec daemon.
- Building the Linux kernel module from the OVS source tree is deprecated
     * Support for the Linux kernel is capped at version 5.8
     * Only bug fixes for the Linux OOT kernel module will be accepted.
     * The Linux kernel module will be fully removed from the OVS source tree
       in OVS branch 2.18

fix some do_patch error about local patch.

Signed-off-by: Zqiang <qiang.zhang@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2021-03-11 22:33:29 -05:00

65 lines
2.2 KiB
BlitzBasic

require openvswitch.inc
DEPENDS += "virtual/kernel"
PACKAGE_ARCH = "${MACHINE_ARCH}"
RDEPENDS_${PN}-ptest += "\
python3-logging python3-syslog python3-io python3-core \
python3-fcntl python3-shell python3-xml python3-math \
python3-datetime python3-netclient python3 sed \
ldd perl-module-socket perl-module-carp perl-module-exporter \
perl-module-xsloader python3-netserver python3-threading \
python3-resource findutils which diffutils \
"
S = "${WORKDIR}/git"
PV = "2.15+${SRCPV}"
CVE_VERSION = "2.13.0"
FILESEXTRAPATHS_append := "${THISDIR}/${PN}-git:"
SRCREV = "8dc1733eaea866dce033b3c44853e1b09bf59fc7"
SRC_URI = "file://openvswitch-switch \
file://openvswitch-switch-setup \
file://openvswitch-testcontroller \
file://openvswitch-testcontroller-setup \
git://github.com/openvswitch/ovs.git;protocol=git;branch=branch-2.15 \
file://openvswitch-add-ptest-71d553b995d0bd527d3ab1e9fbaf5a2ae34de2f3.patch \
file://run-ptest \
file://disable_m4_check.patch \
file://kernel_module.patch \
file://systemd-update-tool-paths.patch \
file://systemd-create-runtime-dirs.patch \
file://0001-ovs-use-run-instead-of-var-run-for-in-systemd-units.patch \
"
LIC_FILES_CHKSUM = "file://LICENSE;md5=1ce5d23a6429dff345518758f13aaeab"
DPDK_INSTALL_DIR ?= "/opt/dpdk"
PACKAGECONFIG ?= "libcap-ng"
PACKAGECONFIG[dpdk] = "--with-dpdk=${STAGING_DIR_TARGET}${DPDK_INSTALL_DIR}/share/${TARGET_ARCH}-native-linuxapp-gcc,,dpdk,dpdk"
PACKAGECONFIG[libcap-ng] = "--enable-libcapng,--disable-libcapng,libcap-ng,"
PACKAGECONFIG[ssl] = ",--disable-ssl,openssl,"
# Don't compile kernel modules by default since it heavily depends on
# kernel version. Use the in-kernel module for now.
# distro layers can enable with EXTRA_OECONF_pn_openvswitch += ""
# EXTRA_OECONF += "--with-linux=${STAGING_KERNEL_BUILDDIR} --with-linux-source=${STAGING_KERNEL_DIR} KARCH=${TARGET_ARCH}"
# silence a warning
FILES_${PN} += "/lib/modules"
inherit ptest
EXTRA_OEMAKE += "TEST_DEST=${D}${PTEST_PATH} TEST_ROOT=${PTEST_PATH}"
do_install_ptest() {
oe_runmake test-install
}
do_install_append() {
oe_runmake modules_install INSTALL_MOD_PATH=${D}
}