SHA256
1
0
forked from pool/dpdk

Accepting request 505253 from network

1

OBS-URL: https://build.opensuse.org/request/show/505253
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/dpdk?expand=0&rev=17
This commit is contained in:
Dominique Leuenberger 2017-06-22 08:40:06 +00:00 committed by Git OBS Bridge
commit 03b0fb0da0
8 changed files with 146 additions and 105 deletions

View File

@ -0,0 +1,13 @@
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/igb.h b/lib/librte_eal/linuxapp/kni/ethtool/igb/igb.h
index d077b49e9..8667f29ca 100644
--- a/lib/librte_eal/linuxapp/kni/ethtool/igb/igb.h
+++ b/lib/librte_eal/linuxapp/kni/ethtool/igb/igb.h
@@ -607,7 +607,7 @@ struct igb_adapter {
int int_mode;
u32 rss_queues;
u32 vmdq_pools;
- char fw_version[32];
+ char fw_version[43];
u32 wvbr;
struct igb_mac_addr *mac_table;
#ifdef CONFIG_IGB_VMDQ_NETDEV

View File

@ -1,76 +0,0 @@
From d4d2380cbb02980bf0334601d9ce6ec5400413f9 Mon Sep 17 00:00:00 2001
From: Ferruh Yigit <ferruh.yigit@intel.com>
Date: Tue, 21 Mar 2017 09:54:48 +0000
Subject: [PATCH] kni: fix build with kernel 4.11
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
compile error:
.../build/build/lib/librte_eal/linuxapp/kni/kni_net.c:124:6:
error: implicit declaration of function signal_pending
[-Werror=implicit-function-declaration]
if (signal_pending(current) || ret_val <= 0) {
^~~~~~~~~~~~~~
Linux 4.11 moves signal function declarations to its own header file:
Linux: 174cd4b1e5fb ("sched/headers: Prepare to move signal wakeup &
sigpending methods from <linux/sched.h> into <linux/sched/signal.h>")
Use new header file "linux/sched/signal.h" to fix the build error.
Cc: stable@dpdk.org
Reported-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
Tested-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Tested-by: Pankaj Gupta <pagupta@redhat.com>
---
lib/librte_eal/linuxapp/kni/compat.h | 6 ++++++
lib/librte_eal/linuxapp/kni/kni_dev.h | 6 ++++++
2 files changed, 12 insertions(+)
diff --git a/lib/librte_eal/linuxapp/kni/compat.h b/lib/librte_eal/linuxapp/kni/compat.h
index 78da08e5e..d96275af9 100644
--- a/lib/librte_eal/linuxapp/kni/compat.h
+++ b/lib/librte_eal/linuxapp/kni/compat.h
@@ -2,6 +2,8 @@
* Minimal wrappers to allow compiling kni on older kernels.
*/
+#include <linux/version.h>
+
#ifndef RHEL_RELEASE_VERSION
#define RHEL_RELEASE_VERSION(a, b) (((a) << 8) + (b))
#endif
@@ -67,3 +69,7 @@
(LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 34)))
#undef NET_NAME_UNKNOWN
#endif
+
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 11, 0)
+#define HAVE_SIGNAL_FUNCTIONS_OWN_HEADER
+#endif
diff --git a/lib/librte_eal/linuxapp/kni/kni_dev.h b/lib/librte_eal/linuxapp/kni/kni_dev.h
index 002e5fa6c..72385ab4c 100644
--- a/lib/librte_eal/linuxapp/kni/kni_dev.h
+++ b/lib/librte_eal/linuxapp/kni/kni_dev.h
@@ -30,9 +30,15 @@
#endif
#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
+#include "compat.h"
+
#include <linux/if.h>
#include <linux/wait.h>
+#ifdef HAVE_SIGNAL_FUNCTIONS_OWN_HEADER
+#include <linux/sched/signal.h>
+#else
#include <linux/sched.h>
+#endif
#include <linux/netdevice.h>
#include <linux/spinlock.h>
#include <linux/list.h>
--
2.12.2

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:028ce0d405fd91a4955f142014a771a2deaebdf4d46bd45500ffa8e5ee1c287d
size 9052212

3
dpdk-16.11.2.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c8d99a1a074072a6087c3fc2fafa6baf2e64bed08b83935e75e5cf003cefd861
size 9056664

View File

@ -1,3 +1,57 @@
-------------------------------------------------------------------
Wed Jun 14 12:55:10 CEST 2017 - ndas@suse.de
- Updated to 16.11.2 which provide bug fixes as below(fate#321541):
* mbuf: fix missing includes in exported header
* eal: fix debug macro redefinition
* net/nfp: fix packet/data length conversion
* net/i40e: fix setup when bulk is disabled
* pci: fix device registration on FreeBSD
* net/i40e: ensure vector mode is not used with QinQ
* nic_uio: fix device binding at boot
* net/bnx2x: fix transmit queue free threshold
* net/vmxnet3: fix queue size changes
* kni: fix build with kernel 4.11
* kni: fix possible memory leak
* kni: fix crash caused by freeing mempool
* net/i40e: fix allocation check
* net/virtio: fix crash when closing twice
* net/ixgbevf: set xstats id values
* net/i40e: fix hash input set on X722
* eal/linux: fix build with glibc 2.25
* net/i40e: fix incorrect packet index reference
* net/thunderx: fix 32-bit build
* net/thunderx: fix build on FreeBSD
* net/thunderx: fix deadlock in Rx path
* net/ixgbe: fix setting MTU on stopped device
* vfio: fix secondary process start
* net/virtio-user: fix address on 32-bit system
* net/virtio: fix MSI-X for modern devices
* net/virtio: fix link status always down
* net/ixgbe: fix multi-queue mode check in SRIOV mode
* net/i40e/base: fix potential out of bound array access
* vhost: fix false sharing
* net/thunderx: fix stats access out of bounds
* net/virtio: disable LSC interrupt if MSIX not enabled
* net/i40e: fix mbuf alloc failed counter
* net: fix stripped VLAN flag for offload emulation
* vfio: fix disabling INTx
* net/igb: fix VF MAC address setting
* net/igb: fix VF MAC address setting
* net/ixgbe: fix VF Rx mode for allmulticast disabled
* net/bonding: fix updating slave link status
* net/virtio-user: fix overflow
* net/i40e: fix TC bitmap of VEB
* net/ixgbe/base: fix build error
* net/ixgbe: fix Rx queue blocking issue
* net/ixgbe: fix all queues drop setting of DCB
* net/ixgbe: fix TC bandwidth setting
more details can be found in
http://dpdk.org/ml/archives/stable/2017-May/001809.html
[- 0005-kni-fix-build-with-kernel-4.11.patch]
- use default gcc which is now gcc7 (bsc#1042372)
[+0005-kni-fix-build-with-gcc-7.1.patch]
-------------------------------------------------------------------
Tue May 23 22:25:38 UTC 2017 - mchandras@suse.de

View File

@ -43,7 +43,7 @@
# Do NOT edit this auto generated file! Edit dpdk.spec instead
# and run 'pre_checkin.sh' before committing
Name: dpdk-thunderx
Version: 16.11.1
Version: 16.11.2
Release: 0
Summary: Set of libraries and drivers for fast packet processing (thunderx)
License: BSD-3-Clause and GPL-2.0 and LGPL-2.1
@ -61,12 +61,10 @@ Patch1: 0001-enic-fix-Type-punning-and-strict-aliasing-warning.patch
Patch2: 0002-kni-define-HAVE_VF_VLAN_PROTO-for-SLES12SP3.patch
Patch3: 0003-kni-define-HAVE_TRANS_START_HELPER-for-SLES12SP3.patch
Patch4: 0004-net-thunderx-sync-mailbox-definitions-with-Linux-PF-.patch
# PATCH-FIX-UPSTREAM 0005-kni-fix-build-with-kernel-4.11.patch
# This patch fixes the kni build against linux kernel 4.11
Patch5: 0005-kni-fix-build-with-kernel-4.11.patch
#PATCH-FIX-UPSTREAM 0005-kni-fix-build-with-gcc-7.1.patch bsc#1042372
Patch5: 0005-kni-fix-build-with-gcc-7.1.patch
BuildRequires: doxygen
BuildRequires: fdupes
BuildRequires: gcc6
BuildRequires: libnuma-devel
BuildRequires: libpcap-devel
BuildRequires: pesign-obs-integration
@ -147,7 +145,8 @@ The DPDK Kernel NIC Interface (KNI) allows userspace applications access to the
%define pmddir %{_libdir}/dpdk-pmds
%prep
%setup -q -n dpdk-stable-16.11.1
# can't use %{name} because of dpdk-thunderx
%setup -q -n dpdk-stable-%{version}
%patch1 -p1 -z .enic
%patch2 -p1 -z .kni1
%patch3 -p1 -z .kni2
@ -207,30 +206,30 @@ export EXTRA_CFLAGS="%{optflags} -Wformat -fPIC -Wno-error=array-bounds"
# the compiler flags used still won't work for all Fedora-supported
# machines, but runtime checks in DPDK will catch those situations.
make CC=gcc-6 V=1 O=%{target} T=%{target} %{?_smp_mflags} config
make V=1 O=%{target} T=%{target} %{?_smp_mflags} config
setdefaultconf %{target}
%ifnarch %{ix86}
export EXTRA_CFLAGS='-DVERSION=\"%{version}\"'
for flavor in %{flavors_to_build}; do
export RTE_KERNELDIR=%{_prefix}/src/linux-obj/%{_target_cpu}/$flavor
make CC=gcc-6 V=1 O=%{target}-$flavor T=%{target} %{?_smp_mflags} config
make V=1 O=%{target}-$flavor T=%{target} %{?_smp_mflags} config
setdefaultconf %{target}-$flavor
%ifnarch %{ix86}
setconf CONFIG_RTE_EAL_IGB_UIO y %{target}-$flavor
setconf CONFIG_RTE_KNI_KMOD y %{target}-$flavor
%endif
cd %{target}-$flavor
make CC=gcc-6 V=1 %{?_smp_mflags}
make V=1 %{?_smp_mflags}
cd -
done
%endif
make CC=gcc-6 V=1 O=%{target} %{?_smp_mflags}
make CC=gcc-6 V=1 O=%{target} %{?_smp_mflags} doc-api-html
make V=1 O=%{target} %{?_smp_mflags}
make V=1 O=%{target} %{?_smp_mflags} doc-api-html
%if %{with examples}
make CC=gcc-6 V=1 O=%{target}/examples T=%{target} %{?_smp_mflags} examples
make V=1 O=%{target}/examples T=%{target} %{?_smp_mflags} examples
%endif
%install
@ -279,7 +278,6 @@ for f in %{buildroot}/%{_libdir}/*_pmd_*.so.*; do
bn=$(basename ${f})
ln -s ../${bn} %{buildroot}%{pmddir}/${bn}
done
# Setup RTE_SDK environment as expected by apps etc
mkdir -p %{buildroot}/%{_sysconfdir}/profile.d
cat << EOF > %{buildroot}/%{_sysconfdir}/profile.d/dpdk-sdk-%{_arch}.sh

View File

@ -1,3 +1,57 @@
-------------------------------------------------------------------
Wed Jun 14 12:55:10 CEST 2017 - ndas@suse.de
- Updated to 16.11.2 which provide bug fixes as below(fate#321541):
* mbuf: fix missing includes in exported header
* eal: fix debug macro redefinition
* net/nfp: fix packet/data length conversion
* net/i40e: fix setup when bulk is disabled
* pci: fix device registration on FreeBSD
* net/i40e: ensure vector mode is not used with QinQ
* nic_uio: fix device binding at boot
* net/bnx2x: fix transmit queue free threshold
* net/vmxnet3: fix queue size changes
* kni: fix build with kernel 4.11
* kni: fix possible memory leak
* kni: fix crash caused by freeing mempool
* net/i40e: fix allocation check
* net/virtio: fix crash when closing twice
* net/ixgbevf: set xstats id values
* net/i40e: fix hash input set on X722
* eal/linux: fix build with glibc 2.25
* net/i40e: fix incorrect packet index reference
* net/thunderx: fix 32-bit build
* net/thunderx: fix build on FreeBSD
* net/thunderx: fix deadlock in Rx path
* net/ixgbe: fix setting MTU on stopped device
* vfio: fix secondary process start
* net/virtio-user: fix address on 32-bit system
* net/virtio: fix MSI-X for modern devices
* net/virtio: fix link status always down
* net/ixgbe: fix multi-queue mode check in SRIOV mode
* net/i40e/base: fix potential out of bound array access
* vhost: fix false sharing
* net/thunderx: fix stats access out of bounds
* net/virtio: disable LSC interrupt if MSIX not enabled
* net/i40e: fix mbuf alloc failed counter
* net: fix stripped VLAN flag for offload emulation
* vfio: fix disabling INTx
* net/igb: fix VF MAC address setting
* net/igb: fix VF MAC address setting
* net/ixgbe: fix VF Rx mode for allmulticast disabled
* net/bonding: fix updating slave link status
* net/virtio-user: fix overflow
* net/i40e: fix TC bitmap of VEB
* net/ixgbe/base: fix build error
* net/ixgbe: fix Rx queue blocking issue
* net/ixgbe: fix all queues drop setting of DCB
* net/ixgbe: fix TC bandwidth setting
more details can be found in
http://dpdk.org/ml/archives/stable/2017-May/001809.html
[- 0005-kni-fix-build-with-kernel-4.11.patch]
- use default gcc which is now gcc7 (bsc#1042372)
[+0005-kni-fix-build-with-gcc-7.1.patch]
-------------------------------------------------------------------
Tue May 23 22:25:38 UTC 2017 - mchandras@suse.de

View File

@ -41,7 +41,7 @@
# Add option to build without tools
%bcond_without tools
Name: dpdk
Version: 16.11.1
Version: 16.11.2
Release: 0
Summary: Set of libraries and drivers for fast packet processing
License: BSD-3-Clause and GPL-2.0 and LGPL-2.1
@ -59,12 +59,10 @@ Patch1: 0001-enic-fix-Type-punning-and-strict-aliasing-warning.patch
Patch2: 0002-kni-define-HAVE_VF_VLAN_PROTO-for-SLES12SP3.patch
Patch3: 0003-kni-define-HAVE_TRANS_START_HELPER-for-SLES12SP3.patch
Patch4: 0004-net-thunderx-sync-mailbox-definitions-with-Linux-PF-.patch
# PATCH-FIX-UPSTREAM 0005-kni-fix-build-with-kernel-4.11.patch
# This patch fixes the kni build against linux kernel 4.11
Patch5: 0005-kni-fix-build-with-kernel-4.11.patch
#PATCH-FIX-UPSTREAM 0005-kni-fix-build-with-gcc-7.1.patch bsc#1042372
Patch5: 0005-kni-fix-build-with-gcc-7.1.patch
BuildRequires: doxygen
BuildRequires: fdupes
BuildRequires: gcc6
BuildRequires: libnuma-devel
BuildRequires: libpcap-devel
BuildRequires: pesign-obs-integration
@ -145,7 +143,8 @@ The DPDK Kernel NIC Interface (KNI) allows userspace applications access to the
%define pmddir %{_libdir}/dpdk-pmds
%prep
%setup -q -n dpdk-stable-16.11.1
# can't use %{name} because of dpdk-thunderx
%setup -q -n dpdk-stable-%{version}
%patch1 -p1 -z .enic
%patch2 -p1 -z .kni1
%patch3 -p1 -z .kni2
@ -205,30 +204,30 @@ export EXTRA_CFLAGS="%{optflags} -Wformat -fPIC -Wno-error=array-bounds"
# the compiler flags used still won't work for all Fedora-supported
# machines, but runtime checks in DPDK will catch those situations.
make CC=gcc-6 V=1 O=%{target} T=%{target} %{?_smp_mflags} config
make V=1 O=%{target} T=%{target} %{?_smp_mflags} config
setdefaultconf %{target}
%ifnarch %{ix86}
export EXTRA_CFLAGS='-DVERSION=\"%{version}\"'
for flavor in %{flavors_to_build}; do
export RTE_KERNELDIR=%{_prefix}/src/linux-obj/%{_target_cpu}/$flavor
make CC=gcc-6 V=1 O=%{target}-$flavor T=%{target} %{?_smp_mflags} config
make V=1 O=%{target}-$flavor T=%{target} %{?_smp_mflags} config
setdefaultconf %{target}-$flavor
%ifnarch %{ix86}
setconf CONFIG_RTE_EAL_IGB_UIO y %{target}-$flavor
setconf CONFIG_RTE_KNI_KMOD y %{target}-$flavor
%endif
cd %{target}-$flavor
make CC=gcc-6 V=1 %{?_smp_mflags}
make V=1 %{?_smp_mflags}
cd -
done
%endif
make CC=gcc-6 V=1 O=%{target} %{?_smp_mflags}
make CC=gcc-6 V=1 O=%{target} %{?_smp_mflags} doc-api-html
make V=1 O=%{target} %{?_smp_mflags}
make V=1 O=%{target} %{?_smp_mflags} doc-api-html
%if %{with examples}
make CC=gcc-6 V=1 O=%{target}/examples T=%{target} %{?_smp_mflags} examples
make V=1 O=%{target}/examples T=%{target} %{?_smp_mflags} examples
%endif
%install
@ -277,7 +276,6 @@ for f in %{buildroot}/%{_libdir}/*_pmd_*.so.*; do
bn=$(basename ${f})
ln -s ../${bn} %{buildroot}%{pmddir}/${bn}
done
# Setup RTE_SDK environment as expected by apps etc
mkdir -p %{buildroot}/%{_sysconfdir}/profile.d
cat << EOF > %{buildroot}/%{_sysconfdir}/profile.d/dpdk-sdk-%{_arch}.sh