diff --git a/SOURCES/openvswitch-2.17.0.patch b/SOURCES/openvswitch-2.17.0.patch index 6b336f3..0151798 100644 --- a/SOURCES/openvswitch-2.17.0.patch +++ b/SOURCES/openvswitch-2.17.0.patch @@ -1,8 +1,8 @@ diff --git a/.ci/linux-build.sh b/.ci/linux-build.sh -index 6cd38ff3ef..74872753d0 100755 +index 6cd38ff3ef..f5021e1a8f 100755 --- a/.ci/linux-build.sh +++ b/.ci/linux-build.sh -@@ -220,7 +220,7 @@ fi +@@ -220,11 +220,15 @@ fi if [ "$DPDK" ] || [ "$DPDK_SHARED" ]; then if [ -z "$DPDK_VER" ]; then @@ -11,7 +11,15 @@ index 6cd38ff3ef..74872753d0 100755 fi install_dpdk $DPDK_VER fi -@@ -233,7 +233,7 @@ elif [ "$M32" ]; then + ++if [ "$STD" ]; then ++ CFLAGS_FOR_OVS="${CFLAGS_FOR_OVS} -std=$STD" ++fi ++ + if [ "$CC" = "clang" ]; then + CFLAGS_FOR_OVS="${CFLAGS_FOR_OVS} -Wno-error=unused-command-line-argument" + elif [ "$M32" ]; then +@@ -233,7 +237,7 @@ elif [ "$M32" ]; then # difference on 'configure' and 'make' stages. export CC="$CC -m32" elif [ "$TRAVIS_ARCH" != "aarch64" ]; then @@ -20,7 +28,7 @@ index 6cd38ff3ef..74872753d0 100755 if [ "$AFXDP" ]; then # netdev-afxdp uses memset for 64M for umem initialization. SPARSE_FLAGS="${SPARSE_FLAGS} -Wno-memcpy-max-count" -@@ -244,9 +244,7 @@ fi +@@ -244,9 +248,7 @@ fi if [ "$ASAN" ]; then # This will override default option configured in tests/atlocal.in. export ASAN_OPTIONS='detect_leaks=1' @@ -73,7 +81,7 @@ index a7ae793bc4..c460103bb1 100644 memory: 4G diff --git a/.github/workflows/build-and-test.yml b/.github/workflows/build-and-test.yml -index eac3504e48..6ccab8e908 100644 +index eac3504e48..c923df3ea7 100644 --- a/.github/workflows/build-and-test.yml +++ b/.github/workflows/build-and-test.yml @@ -6,7 +6,7 @@ jobs: @@ -85,7 +93,11 @@ index eac3504e48..6ccab8e908 100644 libssl-dev llvm-dev libelf-dev libnuma-dev libpcap-dev \ ninja-build selinux-policy-dev deb_dependencies: | -@@ -25,7 +25,7 @@ jobs: +@@ -22,10 +22,11 @@ jobs: + LIBS: ${{ matrix.libs }} + M32: ${{ matrix.m32 }} + OPTS: ${{ matrix.opts }} ++ STD: ${{ matrix.std }} TESTSUITE: ${{ matrix.testsuite }} name: linux ${{ join(matrix.*, ' ') }} @@ -94,7 +106,19 @@ index eac3504e48..6ccab8e908 100644 timeout-minutes: 30 strategy: -@@ -111,7 +111,7 @@ jobs: +@@ -37,6 +38,11 @@ jobs: + - compiler: clang + opts: --disable-ssl + ++ - compiler: gcc ++ std: c99 ++ - compiler: clang ++ std: c99 ++ + - compiler: gcc + testsuite: test + kernel: 3.16 +@@ -111,7 +117,7 @@ jobs: steps: - name: checkout @@ -103,7 +127,7 @@ index eac3504e48..6ccab8e908 100644 - name: update PATH run: | -@@ -119,7 +119,7 @@ jobs: +@@ -119,7 +125,7 @@ jobs: echo "$HOME/.local/bin" >> $GITHUB_PATH - name: set up python @@ -112,7 +136,7 @@ index eac3504e48..6ccab8e908 100644 with: python-version: '3.9' -@@ -135,7 +135,7 @@ jobs: +@@ -135,7 +141,7 @@ jobs: - name: cache if: matrix.dpdk != '' || matrix.dpdk_shared != '' @@ -121,7 +145,7 @@ index eac3504e48..6ccab8e908 100644 env: matrix_key: ${{ matrix.dpdk }}${{ matrix.dpdk_shared }} ci_key: ${{ hashFiles('dpdk-ci-signature') }} -@@ -163,7 +163,7 @@ jobs: +@@ -163,7 +169,7 @@ jobs: - name: upload deb packages if: matrix.deb_package != '' @@ -130,7 +154,7 @@ index eac3504e48..6ccab8e908 100644 with: name: deb-packages path: '/home/runner/work/ovs/*.deb' -@@ -182,7 +182,7 @@ jobs: +@@ -182,7 +188,7 @@ jobs: - name: upload logs on failure if: failure() || cancelled() @@ -139,7 +163,7 @@ index eac3504e48..6ccab8e908 100644 with: name: logs-linux-${{ join(matrix.*, '-') }} path: logs.tgz -@@ -201,13 +201,13 @@ jobs: +@@ -201,13 +207,13 @@ jobs: steps: - name: checkout @@ -155,7 +179,7 @@ index eac3504e48..6ccab8e908 100644 with: python-version: '3.9' - name: install dependencies -@@ -218,7 +218,7 @@ jobs: +@@ -218,7 +224,7 @@ jobs: run: ./.ci/osx-build.sh - name: upload logs on failure if: failure() @@ -348,6 +372,19 @@ index 27be4aa412..1dc406170f 100644 + `__ +.. |emeritus-status| replace:: `Emeritus Status for OVS Committers + `__ +diff --git a/Makefile.am b/Makefile.am +index cb8076433e..2a41e63ad9 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -368,7 +368,7 @@ ALL_LOCAL += manpage-check + manpage-check: $(man_MANS) $(dist_man_MANS) $(noinst_man_MANS) + @error=false; \ + for manpage in $?; do \ +- LANG=en_US.UTF-8 groff -w mac -w delim -w escape -w input -w missing -w tab -T utf8 -man -p -z $$manpage >$@.tmp 2>&1; \ ++ LANG=en_US.UTF-8 groff -t -w mac -w delim -w escape -w input -w missing -w tab -T utf8 -man -p -z $$manpage >$@.tmp 2>&1; \ + if grep warning: $@.tmp; then error=:; fi; \ + rm -f $@.tmp; \ + done; \ diff --git a/NEWS b/NEWS index c10e9bfacc..673f227202 100644 --- a/NEWS @@ -531,6 +568,37 @@ index 0c360fd1ef..c981f90bc7 100644 [], [enable_sparse=no]) AM_CONDITIONAL([ENABLE_SPARSE_BY_DEFAULT], [test $enable_sparse = yes])]) +diff --git a/build-aux/extract-ofp-fields b/build-aux/extract-ofp-fields +index 8766995d9a..7a9788be96 100755 +--- a/build-aux/extract-ofp-fields ++++ b/build-aux/extract-ofp-fields +@@ -578,7 +578,7 @@ def field_to_xml(field_node, f, body, summary): + body += [""".PP + \\fB%s Field\\fR + .TS +-tab(;); ++tab(;),nowarn; + l lx. + """ % title] + +@@ -655,7 +655,7 @@ def group_xml_to_nroff(group_node, fields): + '.SH \"%s\"\n' % build.nroff.text_to_nroff(title.upper() + " FIELDS"), + '.SS "Summary:"\n', + '.TS\n', +- 'tab(;);\n', ++ 'tab(;),nowarn;\n', + 'l l l l l l l.\n', + 'Name;Bytes;Mask;RW?;Prereqs;NXM/OXM Support\n', + '\_;\_;\_;\_;\_;\_\n'] +@@ -665,7 +665,7 @@ def group_xml_to_nroff(group_node, fields): + return ''.join(content) + + def make_oxm_classes_xml(document): +- s = '''tab(;); ++ s = '''tab(;),nowarn; + l l l. + Prefix;Vendor;Class + \_;\_;\_ diff --git a/build-aux/generate-dhparams-c b/build-aux/generate-dhparams-c index 1884c99e1f..aca1dbca91 100755 --- a/build-aux/generate-dhparams-c @@ -50266,6 +50334,27 @@ index 0000000000..6fae6f727c + +#endif /* __KERNEL__ || !HAVE_TCA_STATS_PKT64 */ +#endif /* __LINUX_GEN_STATS_WRAPPER_H */ +diff --git a/include/openvswitch/compiler.h b/include/openvswitch/compiler.h +index cf009f8264..52614a5ac0 100644 +--- a/include/openvswitch/compiler.h ++++ b/include/openvswitch/compiler.h +@@ -37,6 +37,16 @@ + #define OVS_NO_RETURN + #endif + ++#ifndef typeof ++#define typeof __typeof__ ++#endif ++ ++#ifndef __cplusplus ++#ifndef asm ++#define asm __asm__ ++#endif ++#endif ++ + #if __GNUC__ && !__CHECKER__ + #define OVS_UNUSED __attribute__((__unused__)) + #define OVS_PRINTF_FORMAT(FMT, ARG1) __attribute__((__format__(printf, FMT, ARG1))) diff --git a/include/openvswitch/dynamic-string.h b/include/openvswitch/dynamic-string.h index ee18217107..1c262b0494 100644 --- a/include/openvswitch/dynamic-string.h @@ -50939,7 +51028,7 @@ index a8b0705d9f..631a8fca80 100755 """Remove all OVS IPsec related state from the NSS database""" try: diff --git a/lib/automake.mk b/lib/automake.mk -index a23cdc4ade..e9a5978e88 100644 +index a23cdc4ade..3c4a58ed9c 100644 --- a/lib/automake.mk +++ b/lib/automake.mk @@ -38,8 +38,6 @@ lib_libopenvswitchavx512_la_CFLAGS = \ @@ -50960,6 +51049,15 @@ index a23cdc4ade..e9a5978e88 100644 lib/crc32c.c \ lib/crc32c.h \ lib/csum.c \ +@@ -437,7 +437,7 @@ lib_libsflow_la_SOURCES = \ + lib/sflow_poller.c \ + lib/sflow_receiver.c + lib_libsflow_la_CPPFLAGS = $(AM_CPPFLAGS) +-lib_libsflow_la_CFLAGS = $(AM_CFLAGS) ++lib_libsflow_la_CFLAGS = $(AM_CFLAGS) -D_BSD_SOURCE -D_DEFAULT_SOURCE + if HAVE_WNO_UNUSED + lib_libsflow_la_CFLAGS += -Wno-unused + endif diff --git a/lib/cfm.c b/lib/cfm.c index cc43e70e31..c3742f3de2 100644 --- a/lib/cfm.c @@ -53901,10 +53999,18 @@ index e03cd8d0c5..474344194f 100644 + } +} diff --git a/lib/meta-flow.xml b/lib/meta-flow.xml -index 28865f88c8..ff81fddc5e 100644 +index 28865f88c8..fe80ee930d 100644 --- a/lib/meta-flow.xml +++ b/lib/meta-flow.xml -@@ -4303,9 +4303,9 @@ r r c c c. +@@ -3517,6 +3517,7 @@ actions=clone(load:0->NXM_OF_IN_PORT[],output:123) +

+ + ++nowarn; + r r r r r. + Criteria OpenFlow 1.0 OpenFlow 1.1 OpenFlow 1.2+ NXM + \_ \_ \_ \_ \_ +@@ -4303,9 +4304,9 @@ r r c c c. @@ -65487,6 +65593,18 @@ index 220e5c7472..8ee8a99c22 100644 /usr/share/openvswitch/vswitch.ovsschema /usr/share/openvswitch/vtep.ovsschema %doc NOTICE README.rst NEWS rhel/README.RHEL.rst +diff --git a/tests/.gitignore b/tests/.gitignore +index a3d927e5d5..4c52fb2534 100644 +--- a/tests/.gitignore ++++ b/tests/.gitignore +@@ -3,6 +3,7 @@ + /Makefile.in + /atconfig + /atlocal ++/clang-analyzer-results/ + /idltest.c + /idltest.h + /idltest.ovsidl diff --git a/tests/alb.at b/tests/alb.at index 2bef06f39c..922185d61d 100644 --- a/tests/alb.at @@ -72037,6 +72155,28 @@ index f639ba53a2..53c86ef2fd 100644 +[ + AT_SKIP_IF([:]) +]) +diff --git a/tests/test-barrier.c b/tests/test-barrier.c +index 3bc5291cc1..fb0ab0e695 100644 +--- a/tests/test-barrier.c ++++ b/tests/test-barrier.c +@@ -14,13 +14,13 @@ + * limitations under the License. + */ + +-#include +- + #include ++#undef NDEBUG ++#include + +-#include "ovs-thread.h" +-#include "ovs-rcu.h" + #include "ovstest.h" ++#include "ovs-rcu.h" ++#include "ovs-thread.h" + #include "random.h" + #include "util.h" + diff --git a/tests/test-cmap.c b/tests/test-cmap.c index 0705475606..588a5dea63 100644 --- a/tests/test-cmap.c @@ -72226,6 +72366,25 @@ index 9259b0b3fc..e50c7c3807 100644 hmap_destroy(&hmap); } +diff --git a/tests/test-id-fpool.c b/tests/test-id-fpool.c +index 25275d9aef..27800aa9ba 100644 +--- a/tests/test-id-fpool.c ++++ b/tests/test-id-fpool.c +@@ -14,12 +14,12 @@ + * limitations under the License. + */ + ++#include + #undef NDEBUG + #include + #include + #include +- +-#include ++#include + + #include "command-line.h" + #include "id-fpool.h" diff --git a/tests/test-json.c b/tests/test-json.c index 072a537252..fa51bb31c5 100644 --- a/tests/test-json.c @@ -72481,6 +72640,25 @@ index 6f1fb059bc..ac82f2048e 100644 } } } +diff --git a/tests/test-mpsc-queue.c b/tests/test-mpsc-queue.c +index a38bf9e6df..16aa804a03 100644 +--- a/tests/test-mpsc-queue.c ++++ b/tests/test-mpsc-queue.c +@@ -14,12 +14,12 @@ + * limitations under the License. + */ + ++#include + #undef NDEBUG + #include + #include + #include +- +-#include ++#include + + #include "command-line.h" + #include "guarded-list.h" diff --git a/tests/test-ovsdb.c b/tests/test-ovsdb.c index ca4e87b811..cd1c31a6c2 100644 --- a/tests/test-ovsdb.c diff --git a/SPECS/openvswitch2.17.spec b/SPECS/openvswitch2.17.spec index b5b4760..3feec1b 100644 --- a/SPECS/openvswitch2.17.spec +++ b/SPECS/openvswitch2.17.spec @@ -63,7 +63,7 @@ Summary: Open vSwitch Group: System Environment/Daemons daemon/database/utilities URL: http://www.openvswitch.org/ Version: 2.17.0 -Release: 116%{?dist} +Release: 117%{?dist} # Nearly all of openvswitch is ASL 2.0. The bugtool is LGPLv2+, and the # lib/sflow*.[ch] files are SISSL @@ -749,6 +749,18 @@ exit 0 %endif %changelog +* Wed Aug 23 2023 Open vSwitch CI - 2.17.0-117 +- Merging upstream branch-2.17 [RH git: 80b6f5d177] + Commit list: + 93412e00e7 docs: Run tbl preprocessor in manpage-check rule. + 6929485d31 docs: Add `nowarn` region option to tables. + 08b6b83a36 tests: Add clang-analyzer-results to gitignore. + c252b1f8a7 ci: Add jobs to test -std=c99 builds. + 242bb2624c tests: Fix order of includes in barrier/id-fpool/mpsc-queue tests. + 292eca58c6 sflow: Always enable _BSD_SOURCE. + 82aa3fb019 compiler.h: Don't use asm and typeof with non-GNU compilers. + + * Thu Aug 17 2023 Open vSwitch CI - 2.17.0-116 - Merging upstream branch-2.17 [RH git: c9b4175537] Commit list: