aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaxim Uvarov <maxim.uvarov@linaro.org>2018-10-21 10:19:41 +0300
committerMaxim Uvarov <maxim.uvarov@linaro.org>2018-11-06 19:00:44 +0300
commit6c0ffbf9689e36cc94d303d5ac30575fef041cbe (patch)
tree6c1908cb46df7a779cdb3577c3c78e6e7c6e0060
parent7d2f7dbf7d97cea348bb0499b684103fd8ad750f (diff)
remove scripts/build-pktio-dpdk
Script was introduced to quick build odp with dpdk pktio support for dev or testing propose. Now it's more easy to run docker container with same parameters as CI does. Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org> Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org> Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org> Reviewed-and-tested-by: Matias Elo <matias.elo@nokia.com>
-rw-r--r--DEPENDENCIES37
-rwxr-xr-xscripts/build-pktio-dpdk40
2 files changed, 28 insertions, 49 deletions
diff --git a/DEPENDENCIES b/DEPENDENCIES
index 6b345b9c3..abe6d7411 100644
--- a/DEPENDENCIES
+++ b/DEPENDENCIES
@@ -166,23 +166,42 @@ Prerequisites for building the OpenDataPlane (ODP) API
Use DPDK for ODP packet I/O.
+ Note: only packet I/O is accelerated with DPDK. Use
+ https://github.com/Linaro/odp-dpdk.git
+ for fully accelerated odp dpdk platform.
+
+3.4.1 DPDK pktio requirements
+
DPDK pktio adds a depency to NUMA library.
# Debian/Ubuntu
$ sudo apt-get install libnuma-dev
# CentOS/RedHat/Fedora
$ sudo yum install numactl-devel
- Note: only packet I/O is accelerated with DPDK. Use
- https://github.com/Linaro/odp-dpdk.git
- for fully accelerated odp dpdk platform.
+3.4.2 Native DPDK install
+ # Debian/Ubuntu starting from 18.04
+ $ sudo apt-get install dpdk-dev
+
+3.4.2 Built DPDK from src
+ git clone --branch=17.11 http://dpdk.org/git/dpdk-stable dpdk
+
+ #Make and edit DPDK configuration
+ TARGET="x86_64-native-linuxapp-gcc"
+ make config T=${TARGET} O=${TARGET}
+ pushd ${TARGET}
-3.4.1 Building DPDK and ODP with DPDK pktio support
+ #To use I/O without DPDK supported NIC's enable pcap pmd:
+ sed -ri 's,(CONFIG_RTE_LIBRTE_PMD_PCAP=).*,\1y,' .config
+ popd
- DPDK packet I/O has been tested to work with DPDK v17.11.
+ #Build DPDK
+ make build O=${TARGET} EXTRA_CFLAGS="-fPIC"
+ make install O=${TARGET} DESTDIR=${TARGET}
- Follow steps in ./scripts/build-pktio-dpdk
+ #compile ODP
+ ./configure --with-dpdk-path=`pwd`/dpdk/${TARGET}/usr/local
-3.4.2 Setup system
+3.4.3 Setup system
# Load DPDK modules
$ sudo /sbin/modprobe uio
@@ -194,13 +213,13 @@ Prerequisites for building the OpenDataPlane (ODP) API
512 x 2MB hugepages. All this can be done with the DPDK setup script
(<dpdk-dir>/tools/dpdk-setup.sh).
-3.4.3 Running ODP with DPDK pktio
+3.4.4 Running ODP with DPDK pktio
ODP applications will try use DPDK for packet I/O by default. If some other
I/O type is desired instead, DPDK I/O can be disabled by setting the
environment variable ODP_PKTIO_DISABLE_DPDK.
- DPDK interfaces are accessed using indices. For example, two first DPDK
+ DPDK interfaces are accessed using indexes. For example, two first DPDK
interfaces can be used with the odp_l2fwd example as follows:
$ cd <odp_dir>
$ sudo ./test/performance/odp_l2fwd -i 0,1 -c 2 -m 0
diff --git a/scripts/build-pktio-dpdk b/scripts/build-pktio-dpdk
deleted file mode 100755
index b0c0a4d0e..000000000
--- a/scripts/build-pktio-dpdk
+++ /dev/null
@@ -1,40 +0,0 @@
-#!/bin/bash
-
-TARGET=${TARGET:-"x86_64-native-linuxapp-gcc"}
-
-export ROOT_DIR=$(readlink -e $(dirname $0) | sed 's|/scripts||')
-pushd ${ROOT_DIR}
-
-echo '#include "pcap.h"' | cpp -H -o /dev/null 2>&1
-if [ "$?" != "0" ]; then
- echo "Error: pcap is not installed. You may need to install libpcap-dev"
-fi
-
-echo '#include "numa.h"' | cpp -H -o /dev/null 2>&1
-if [ "$?" != "0" ]; then
- echo "Error: NUMA library is not installed. You need to install libnuma-dev"
- exit 1
-fi
-
-git -c advice.detachedHead=false clone -q --depth=1 --single-branch --branch=17.11 http://dpdk.org/git/dpdk-stable dpdk
-pushd dpdk
-git log --oneline --decorate
-
-#Make and edit DPDK configuration
-make config T=${TARGET} O=${TARGET}
-pushd ${TARGET}
-#To use I/O without DPDK supported NIC's enable pcap pmd:
-sed -ri 's,(CONFIG_RTE_LIBRTE_PMD_PCAP=).*,\1y,' .config
-popd
-
-#Build DPDK
-make build O=${TARGET} EXTRA_CFLAGS="-fPIC"
-make install O=${TARGET} DESTDIR=${TARGET}
-popd
-
-#Build ODP
-./bootstrap;
-./configure --enable-test-vald --enable-test-perf --enable-test-cpp \
- --enable-debug --enable-debug-print \
- --with-dpdk-path=`pwd`/dpdk/${TARGET}/usr/local
-make