From d1192196f21301f4c0a4c15a5d63e7dcd194e237 Mon Sep 17 00:00:00 2001 From: CentOS Sources Date: Tue, 9 May 2023 05:25:27 +0000 Subject: [PATCH] import dpdk-22.11-3.el9_2 --- .dpdk.metadata | 2 +- .gitignore | 2 +- ...eue-use-after-free-on-NUMA-reallocat.patch | 34 ----------- SPECS/dpdk.spec | 59 ++++++++++++++----- 4 files changed, 45 insertions(+), 52 deletions(-) delete mode 100644 SOURCES/0001-vhost-fix-virtqueue-use-after-free-on-NUMA-reallocat.patch diff --git a/.dpdk.metadata b/.dpdk.metadata index e90d850..c1bc26b 100644 --- a/.dpdk.metadata +++ b/.dpdk.metadata @@ -1,2 +1,2 @@ -d36c9e0949cb80d890273365f0d2b627d7f6f21b SOURCES/dpdk-21.11.2.tar.xz +920fad3e24b62e92d9f8c5192ceed74fbb2e1c5a SOURCES/dpdk-22.11.tar.xz 3cc45b133677fbff08e89e65a2120be52ebb27a5 SOURCES/pyelftools-0.27.tar.gz diff --git a/.gitignore b/.gitignore index dbe2f1d..878be45 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,2 @@ -SOURCES/dpdk-21.11.2.tar.xz +SOURCES/dpdk-22.11.tar.xz SOURCES/pyelftools-0.27.tar.gz diff --git a/SOURCES/0001-vhost-fix-virtqueue-use-after-free-on-NUMA-reallocat.patch b/SOURCES/0001-vhost-fix-virtqueue-use-after-free-on-NUMA-reallocat.patch deleted file mode 100644 index cb52a30..0000000 --- a/SOURCES/0001-vhost-fix-virtqueue-use-after-free-on-NUMA-reallocat.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 8010a15523e896ca2f2436432602210cab793f87 Mon Sep 17 00:00:00 2001 -From: David Marchand -Date: Mon, 25 Jul 2022 22:32:03 +0200 -Subject: [PATCH] vhost: fix virtqueue use after free on NUMA reallocation - -[ upstream commit 0b2a2ca35037d6a5168f0832c11d9858b8ae946a ] - -translate_ring_addresses (via numa_realloc) may change a virtio device and -virtio queue. -The virtqueue object must be refreshed before accessing the lock. - -Fixes: 04c27cb673b9 ("vhost: fix unsafe vring addresses modifications") - -Signed-off-by: David Marchand -Reviewed-by: Maxime Coquelin ---- - lib/vhost/vhost_user.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/lib/vhost/vhost_user.c b/lib/vhost/vhost_user.c -index df780fd7d6..2b45e35d4a 100644 ---- a/lib/vhost/vhost_user.c -+++ b/lib/vhost/vhost_user.c -@@ -2575,6 +2575,7 @@ vhost_user_iotlb_msg(struct virtio_net **pdev, struct VhostUserMsg *msg, - if (is_vring_iotlb(dev, vq, imsg)) { - rte_spinlock_lock(&vq->access_lock); - *pdev = dev = translate_ring_addresses(dev, i); -+ vq = dev->virtqueue[i]; - rte_spinlock_unlock(&vq->access_lock); - } - } --- -2.37.3 - diff --git a/SPECS/dpdk.spec b/SPECS/dpdk.spec index b2dbe55..a982d58 100644 --- a/SPECS/dpdk.spec +++ b/SPECS/dpdk.spec @@ -8,8 +8,8 @@ #% define date 20191128 #% define shortcommit0 %(c=%{commit0}; echo ${c:0:7}) -%define ver 21.11.2 -%define rel 1 +%define ver 22.11 +%define rel 3 %define srcname dpdk%(awk -F. '{ if (NF > 2) print "-stable" }' <<<%{version}) @@ -31,8 +31,6 @@ Source: http://fast.dpdk.org/rel/dpdk-%{ver}.tar.xz # Only needed for creating snapshot tarballs, not used in build itself Source100: dpdk-snapshot.sh -Patch1: 0001-vhost-fix-virtqueue-use-after-free-on-NUMA-reallocat.patch - Summary: Set of libraries and drivers for fast packet processing # @@ -64,7 +62,7 @@ Source1: https://github.com/eliben/pyelftools/archive/refs/tags/v%{pyelftoolsver %if 0%{?rhel} > 8 || 0%{?fedora} BuildRequires: python3-pyelftools %endif -BuildRequires: gcc, zlib-devel, numactl-devel +BuildRequires: gcc, zlib-devel, numactl-devel, libarchive-devel BuildRequires: doxygen, python3-sphinx %ifarch x86_64 BuildRequires: rdma-core-devel >= 15 @@ -125,6 +123,15 @@ as L2 and L3 forwarding. export PYTHONPATH=$(pwd)/pyelftools-%{pyelftoolsver} %endif +ENABLED_APPS=( + test-pmd + test-bbdev +) + +for app in "${ENABLED_APPS[@]}"; do + enable_apps="${enable_apps:+$enable_apps,}"$app +done + ENABLED_DRIVERS=( bus/pci bus/vdev @@ -139,6 +146,7 @@ ENABLED_DRIVERS=( %ifarch x86_64 ENABLED_DRIVERS+=( + baseband/acc bus/auxiliary bus/vmbus common/iavf @@ -163,13 +171,15 @@ ENABLED_DRIVERS+=( ) %endif -for driver in ${ENABLED_DRIVERS[@]}; do +for driver in "${ENABLED_DRIVERS[@]}"; do enable_drivers="${enable_drivers:+$enable_drivers,}"$driver done -# As of 21.11-rc3, following libraries can be disabled: +# As of 22.11, following libraries can be disabled: # optional_libs = [ # 'bitratestats', +# 'cfgfile', +# 'flow_classify', # 'gpudev', # 'gro', # 'gso', @@ -177,17 +187,27 @@ done # 'jobstats', # 'latencystats', # 'metrics', +# 'node', # 'pdump', +# 'pipeline', +# 'port', # 'power', +# 'table', # 'vhost', # ] # If doing any updates, this must be aligned with: # https://access.redhat.com/articles/3538141 DISABLED_LIBS=( + cfgfile + flow_classify gpudev kni jobstats + node + pipeline + port power + table ) for lib in "${DISABLED_LIBS[@]}"; do @@ -198,6 +218,7 @@ done --default-library=shared \ -Ddisable_libs="$disable_libs" \ -Ddrivers_install_subdir=dpdk-pmds \ + -Denable_apps="$enable_apps" \ -Denable_docs=true \ -Denable_drivers="$enable_drivers" \ -Dplatform=generic \ @@ -207,14 +228,14 @@ done # Check drivers and libraries for driver in "${ENABLED_DRIVERS[@]}"; do - config_token=RTE_$(echo $driver | tr [a-z/] [A-Z_]) - ! grep -q $config_token */rte_build_config.h || continue + config_token="RTE_$(echo "$driver" | tr [a-z/] [A-Z_])" + ! grep -Fqw "$config_token" */rte_build_config.h || continue echo "!!! Could not find $driver in rte_build_config.h, please check dependencies. !!!" false done for lib in "${DISABLED_LIBS[@]}"; do - config_token=RTE_LIB_$(echo $lib | tr [a-z/] [A-Z_]) - grep -q $config_token */rte_build_config.h || continue + config_token="RTE_LIB_$(echo "$lib" | tr [a-z/] [A-Z_])" + grep -Fqw "$config_token" */rte_build_config.h || continue echo "!!! Found $lib in rte_build_config.h. !!!" false done @@ -223,12 +244,8 @@ done %install %meson_install -rm -f %{buildroot}%{_bindir}/dpdk-dumpcap -rm -f %{buildroot}%{_bindir}/dpdk-pdump -rm -f %{buildroot}%{_bindir}/dpdk-proc-info -rm -f %{buildroot}%{_bindir}/dpdk-test{,-acl,-bbdev,-cmdline,-compress-perf,-crypto-perf,-eventdev,-pipeline,-sad,-fib,-flow-perf,-regex} rm -f %{buildroot}%{_libdir}/*.a -# Taked from debian/rules +# Taken from debian/rules rm -f %{docdir}/html/.buildinfo rm -f %{docdir}/html/objects.inv rm -rf %{docdir}/html/.doctrees @@ -237,6 +254,7 @@ rm -rf %{docdir}/html/.doctrees # BSD %doc README MAINTAINERS %{_bindir}/dpdk-testpmd +%{_bindir}/dpdk-test-bbdev %dir %{pmddir} %{_libdir}/*.so.* %{pmddir}/*.so.* @@ -273,6 +291,15 @@ rm -rf %{docdir}/html/.doctrees %endif %changelog +* Thu Mar 23 2023 Timothy Redaelli - 22.11-3 +- Add support to load compressed firmware (#2179024) + +* Fri Mar 03 2023 Maxime Coquelin - 22.11-2 +- Add ACC100/ACC200 and related test-bbdev application (#2106526, #2138398) + +* Mon Jan 23 2023 Timothy Redaelli - 22.11-1 +- Rebase to 22.11 (#2129066) + * Mon Sep 12 2022 Timothy Redaelli - 21.11.2-1 - Rebase to 21.11.2 (#2126159) - Includes fixes for CVE-2022-2132 (#2107173) and CVE-2022-28199 (#2123616)