import dpdk-22.11-3.el9_2

c9 imports/c9/dpdk-22.11-3.el9_2
CentOS Sources 2 years ago committed by MSVSphere Packaging Team
parent deed6ddb8e
commit d1192196f2

@ -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

2
.gitignore vendored

@ -1,2 +1,2 @@
SOURCES/dpdk-21.11.2.tar.xz
SOURCES/dpdk-22.11.tar.xz
SOURCES/pyelftools-0.27.tar.gz

@ -1,34 +0,0 @@
From 8010a15523e896ca2f2436432602210cab793f87 Mon Sep 17 00:00:00 2001
From: David Marchand <david.marchand@redhat.com>
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 <david.marchand@redhat.com>
Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
---
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

@ -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 <tredaelli@redhat.com> - 22.11-3
- Add support to load compressed firmware (#2179024)
* Fri Mar 03 2023 Maxime Coquelin <maxime.coquelin@redhat.com> - 22.11-2
- Add ACC100/ACC200 and related test-bbdev application (#2106526, #2138398)
* Mon Jan 23 2023 Timothy Redaelli <tredaelli@redhat.com> - 22.11-1
- Rebase to 22.11 (#2129066)
* Mon Sep 12 2022 Timothy Redaelli <tredaelli@redhat.com> - 21.11.2-1
- Rebase to 21.11.2 (#2126159)
- Includes fixes for CVE-2022-2132 (#2107173) and CVE-2022-28199 (#2123616)

Loading…
Cancel
Save