summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGuo Ruijing <ruijing.guo@intel.com>2017-02-02 15:26:20 -0500
committerGuo Ruijing <ruijing.guo@intel.com>2017-02-13 12:23:49 -0500
commit0e55761328ce3aa384043f0a280b89b2b75682fd (patch)
tree4d6a1cbce6d17368da2bcb63048d32b791f44a6c
parent9b5292b24444232889fc73f4961251bd75f3fc38 (diff)
Clean up and Remove DPDK from ovs with NSH
Change-Id: If3d4e8d9fa00077fe21959ad61eed9b423bc1ae8 Signed-off-by: Guo Ruijing <ruijing.guo@intel.com>
Notes
Notes (review): Code-Review+2: Ruijing <ruijing.guo@intel.com> Workflow+1: Ruijing <ruijing.guo@intel.com> Verified+2: Jenkins Submitted-by: Jenkins Submitted-at: Tue, 14 Feb 2017 00:26:27 +0000 Reviewed-on: https://review.openstack.org/424978 Project: openstack/fuel-plugin-ovs Branch: refs/heads/master
-rw-r--r--README.md6
-rwxr-xr-x[-rw-r--r--]deployment_scripts/install.sh17
-rw-r--r--deployment_scripts/puppet/manifests/ovs-install.pp6
-rw-r--r--deployment_scripts/puppet/manifests/ovs-update-flavors.pp5
-rwxr-xr-x[-rw-r--r--]deployment_scripts/update_flavors.sh0
-rw-r--r--deployment_tasks.yaml4
-rw-r--r--metadata.yaml4
-rwxr-xr-xovs_build/build-ovs-nsh.sh (renamed from ovs_build/build-ovs-nsh-dpdk.sh)52
-rw-r--r--ovs_build/dpdk_16.07/debian/changelog3
-rw-r--r--ovs_build/dpdk_16.07/debian/compat1
-rw-r--r--ovs_build/dpdk_16.07/debian/control81
-rw-r--r--ovs_build/dpdk_16.07/debian/copyright48
-rw-r--r--ovs_build/dpdk_16.07/debian/dpdk-dev.dirs1
-rw-r--r--ovs_build/dpdk_16.07/debian/dpdk-dev.install1
-rw-r--r--ovs_build/dpdk_16.07/debian/dpdk-doc.README.Debian52
-rw-r--r--ovs_build/dpdk_16.07/debian/dpdk-doc.dirs1
-rwxr-xr-xovs_build/dpdk_16.07/debian/dpdk-init251
-rwxr-xr-xovs_build/dpdk_16.07/debian/dpdk-sdk-env.sh3
-rw-r--r--ovs_build/dpdk_16.07/debian/dpdk.conf54
-rw-r--r--ovs_build/dpdk_16.07/debian/dpdk.dirs5
-rw-r--r--ovs_build/dpdk_16.07/debian/dpdk.init57
-rw-r--r--ovs_build/dpdk_16.07/debian/dpdk.install2
-rw-r--r--ovs_build/dpdk_16.07/debian/dpdk.interfaces13
-rw-r--r--ovs_build/dpdk_16.07/debian/dpdk.service12
-rw-r--r--ovs_build/dpdk_16.07/debian/libdpdk-dev.dirs1
-rw-r--r--ovs_build/dpdk_16.07/debian/libdpdk0.dirs1
-rw-r--r--ovs_build/dpdk_16.07/debian/libdpdk0.symbols.amd64580
-rw-r--r--ovs_build/dpdk_16.07/debian/libdpdk0.symbols.i386569
-rw-r--r--ovs_build/dpdk_16.07/debian/patches/series0
-rwxr-xr-xovs_build/dpdk_16.07/debian/rules155
-rw-r--r--ovs_build/dpdk_16.07/debian/source/format1
-rw-r--r--ovs_build/dpdk_16.07/debian/tests/check-dpdk-supported-arch.sh12
-rw-r--r--ovs_build/dpdk_16.07/debian/tests/control8
-rw-r--r--ovs_build/dpdk_16.07/debian/tests/test-initscripts143
-rw-r--r--ovs_build/dpdk_16.07/debian/tests/test-linkage41
-rw-r--r--ovs_build/dpdk_16.07/debian/watch2
-rwxr-xr-xpre_build_hook2
37 files changed, 13 insertions, 2181 deletions
diff --git a/README.md b/README.md
index 44352be..37f17c2 100644
--- a/README.md
+++ b/README.md
@@ -7,14 +7,14 @@ Openvswitch plugin
7Overview 7Overview
8-------- 8--------
9 9
10Fuel plugin fuel-plugin-ovs is developed to deploy OVS with NSH + DPDK 10Fuel plugin fuel-plugin-ovs is developed to deploy OVS with NSH or OVS with DPDK
11 11
12Requirements 12Requirements
13------------ 13------------
14 14
15| Requirement | Version/Comment | 15| Requirement | Version/Comment |
16|----------------------------------|-----------------| 16|----------------------------------|-----------------|
17| Mirantis OpenStack compatibility | 9.0 | 17| Mirantis OpenStack compatibility | 10.0 |
18 18
19Recommendations 19Recommendations
20--------------- 20---------------
@@ -60,7 +60,7 @@ Openvswitch plugin installation
60 60
61 id | name | version | package_version 61 id | name | version | package_version
62 ---|-----------------|---------|---------------- 62 ---|-----------------|---------|----------------
63 1 | fuel-plugin-ovs | 0.9.0 | 4.0.0 63 1 | fuel-plugin-ovs | 1.0.0 | 4.0.0
64 64
658. Plugin is ready to use and can be enabled on the Settings tab of the Fuel web UI. 658. Plugin is ready to use and can be enabled on the Settings tab of the Fuel web UI.
66 66
diff --git a/deployment_scripts/install.sh b/deployment_scripts/install.sh
index 990fb7c..ca87e94 100644..100755
--- a/deployment_scripts/install.sh
+++ b/deployment_scripts/install.sh
@@ -8,13 +8,11 @@ cd $INSTALL_HOME
8host=$1 8host=$1
9nsh=$2 9nsh=$2
10dpdk=$3 10dpdk=$3
11dpdk_socket_mem=${4:-''}
12pmd_cpu_mask=${5:-'2'}
13deb_arch=$(dpkg --print-architecture) 11deb_arch=$(dpkg --print-architecture)
14 12
15ovs="ovs-dpdk_${deb_arch}.tar.gz" 13ovs="ovs-dpdk_${deb_arch}.tar.gz"
16if [ $nsh = 'true' ]; then 14if [ $nsh = 'true' ]; then
17 ovs="ovs-nsh-dpdk_${deb_arch}.tar.gz" 15 ovs="ovs-nsh_${deb_arch}.tar.gz"
18fi 16fi
19 17
20apt-get install -y --allow-unauthenticated dkms 18apt-get install -y --allow-unauthenticated dkms
@@ -31,17 +29,4 @@ then
31 dpkg -i openvswitch-switch-dpdk_*.deb 29 dpkg -i openvswitch-switch-dpdk_*.deb
32fi 30fi
33 31
34if [[ $dpdk = 'true' && -n $dpdk_socket_mem ]]
35then
36 #Set to 0, dpdk init script mount hugepages but don't change current allocation
37 sed -i "s/[# ]*\(NR_2M_PAGES=\).*/\10/" /etc/dpdk/dpdk.conf
38 service dpdk start
39
40 ovs-vsctl --no-wait set Open_vSwitch . other_config:dpdk-init=true
41 ovs-vsctl --no-wait set Open_vSwitch . other_config:dpdk-socket-mem="$dpdk_socket_mem"
42 ovs-vsctl --no-wait set Open_vSwitch . other_config:pmd-cpu-mask="$pmd_cpu_mask"
43
44 service openvswitch-switch restart
45fi
46
47rm -rf $INSTALL_HOME 32rm -rf $INSTALL_HOME
diff --git a/deployment_scripts/puppet/manifests/ovs-install.pp b/deployment_scripts/puppet/manifests/ovs-install.pp
index 0cc78e0..ed30bfd 100644
--- a/deployment_scripts/puppet/manifests/ovs-install.pp
+++ b/deployment_scripts/puppet/manifests/ovs-install.pp
@@ -2,18 +2,14 @@ notice('MODULAR: ovs-install.pp')
2# get options 2# get options
3$master_ip = hiera('master_ip') 3$master_ip = hiera('master_ip')
4$ovs_settings = hiera('fuel-plugin-ovs') 4$ovs_settings = hiera('fuel-plugin-ovs')
5$dpdk = hiera_hash('dpdk', {})
6 5
7$install_nsh = $ovs_settings['install_nsh'] 6$install_nsh = $ovs_settings['install_nsh']
8$install_dpdk = $ovs_settings['install_dpdk'] 7$install_dpdk = $ovs_settings['install_dpdk']
9$install_on_controller = $ovs_settings['install_on_controller']
10$ovs_socket_mem = join(pick($dpdk['ovs_socket_mem'], []), ',')
11$ovs_pmd_core_mask = $dpdk['ovs_pmd_core_mask']
12 8
13if $operatingsystem == 'Ubuntu' { 9if $operatingsystem == 'Ubuntu' {
14 if (!roles_include(['primary-controller', 'controller'])) or $install_on_controller { 10 if (!roles_include(['primary-controller', 'controller'])) or $install_on_controller {
15 exec { 'install ovs_nsh_dpdk': 11 exec { 'install ovs_nsh_dpdk':
16 command => "curl http://${master_ip}:8080/plugins/fuel-plugin-ovs-1.0/deployment_scripts/install.sh | bash -s ${master_ip} ${install_nsh} ${install_dpdk} ${ovs_socket_mem} ${ovs_pmd_core_mask}", 12 command => "/etc/fuel/plugins/fuel-plugin-ovs-1.0/install.sh ${master_ip} ${install_nsh} ${install_dpdk}",
17 path => '/usr/bin:/usr/sbin:/bin:/sbin', 13 path => '/usr/bin:/usr/sbin:/bin:/sbin',
18 } 14 }
19 } 15 }
diff --git a/deployment_scripts/puppet/manifests/ovs-update-flavors.pp b/deployment_scripts/puppet/manifests/ovs-update-flavors.pp
index cc8e0d7..d3117c8 100644
--- a/deployment_scripts/puppet/manifests/ovs-update-flavors.pp
+++ b/deployment_scripts/puppet/manifests/ovs-update-flavors.pp
@@ -1,9 +1,8 @@
1# get options 1notice('MODULAR: ovs-update-flavors')
2$master_ip = hiera('master_ip')
3 2
4if $operatingsystem == 'Ubuntu' { 3if $operatingsystem == 'Ubuntu' {
5 exec { 'update flavors': 4 exec { 'update flavors':
6 command => "curl http://${master_ip}:8080/plugins/fuel-plugin-ovs-1.0/deployment_scripts/update_flavors.sh | bash -s", 5 command => "/etc/fuel/plugins/fuel-plugin-ovs-1.0/update_flavors.sh",
7 path => '/usr/bin:/usr/sbin:/bin:/sbin', 6 path => '/usr/bin:/usr/sbin:/bin:/sbin',
8 } 7 }
9} elsif $operatingsystem == 'CentOS' { 8} elsif $operatingsystem == 'CentOS' {
diff --git a/deployment_scripts/update_flavors.sh b/deployment_scripts/update_flavors.sh
index f4ea479..f4ea479 100644..100755
--- a/deployment_scripts/update_flavors.sh
+++ b/deployment_scripts/update_flavors.sh
diff --git a/deployment_tasks.yaml b/deployment_tasks.yaml
index fa29bb0..b8de3ed 100644
--- a/deployment_tasks.yaml
+++ b/deployment_tasks.yaml
@@ -2,10 +2,8 @@
2 type: puppet 2 type: puppet
3 version: 2.1.0 3 version: 2.1.0
4 groups: [compute, primary-controller, controller] 4 groups: [compute, primary-controller, controller]
5 requires: [allocate_hugepages] 5 requires: [setup_repositories]
6 required_for: [netconfig] 6 required_for: [netconfig]
7 condition:
8 yaql_exp: changedAny($.get('fuel-plugin-ovs'), $.get('dpdk'))
9 parameters: 7 parameters:
10 puppet_manifest: puppet/manifests/ovs-install.pp 8 puppet_manifest: puppet/manifests/ovs-install.pp
11 puppet_modules: puppet/modules:/etc/puppet/modules 9 puppet_modules: puppet/modules:/etc/puppet/modules
diff --git a/metadata.yaml b/metadata.yaml
index 38a3e4f..0997d78 100644
--- a/metadata.yaml
+++ b/metadata.yaml
@@ -1,11 +1,11 @@
1# Plugin name 1# Plugin name
2name: fuel-plugin-ovs 2name: fuel-plugin-ovs
3# Human-readable name for your plugin 3# Human-readable name for your plugin
4title: Install Openvswitch with NSH/DPDK 4title: Install Open vSwitch with NSH or Open vSwitch with DPDK
5# Plugin version 5# Plugin version
6version: '1.0.0' 6version: '1.0.0'
7# Description 7# Description
8description: 'This plugin provides to deploy openvswitch with NSH/DPDK' 8description: 'This plugin provides to deploy Open vSwitch with NSH or Open vSwitch with DPDK'
9# Required fuel version 9# Required fuel version
10fuel_version: ['10.0'] 10fuel_version: ['10.0']
11# Specify license of your plugin 11# Specify license of your plugin
diff --git a/ovs_build/build-ovs-nsh-dpdk.sh b/ovs_build/build-ovs-nsh.sh
index e6f8faf..dbebdb2 100755
--- a/ovs_build/build-ovs-nsh-dpdk.sh
+++ b/ovs_build/build-ovs-nsh.sh
@@ -6,7 +6,7 @@ OVS_COMMIT=f4b0e64cffb4777ff03d48621c3eadcf1d8c19f3
6OVS_VER=${OVS_VER:-2.6.1} 6OVS_VER=${OVS_VER:-2.6.1}
7BUILD_DEST=${BUILD_DEST:-/deb} 7BUILD_DEST=${BUILD_DEST:-/deb}
8BUILD_SRC="$(dirname `readlink -f $0`)" 8BUILD_SRC="$(dirname `readlink -f $0`)"
9BUILD_HOME=${BUILD_HOME:-/tmp/ovs-dpdk} 9BUILD_HOME=${BUILD_HOME:-/tmp/ovs-nsh}
10DEB_ARCH="$(dpkg --print-architecture)" 10DEB_ARCH="$(dpkg --print-architecture)"
11 11
12export DEB_BUILD_OPTIONS='parallel=8 nocheck' 12export DEB_BUILD_OPTIONS='parallel=8 nocheck'
@@ -17,40 +17,6 @@ sudo apt-get -y --force-yes install devscripts dpkg-dev git wget dkms
17rm -rf ${BUILD_HOME}; mkdir -p ${BUILD_HOME}/deb 17rm -rf ${BUILD_HOME}; mkdir -p ${BUILD_HOME}/deb
18 18
19cd ${BUILD_HOME} 19cd ${BUILD_HOME}
20wget -c http://fast.dpdk.org/rel/dpdk-16.07.tar.xz
21xz -d dpdk-16.07.tar.xz; tar xvf dpdk-16.07.tar
22cd dpdk-16.07
23cp -r ${BUILD_SRC}/dpdk_16.07.fuel/debian .
24cat << EOF > debian/changelog
25dpdk (16.07-0ubuntu5~u1604+fuel10) xenial; urgency=low
26
27 * Rebuild debian package
28 * update librte-eal2.symbols
29
30 -- Ruijing Guo <ruijing.guo@intel.com> $(date --rfc-2822)
31EOF
32
33# copy from debian/control
34sudo apt-get install -y --force-yes debhelper \
35 dh-python \
36 dh-systemd \
37 doxygen \
38 graphviz \
39 inkscape \
40 libcap-dev \
41 libpcap-dev \
42 libxen-dev \
43 libxenstore3.0 \
44 python \
45 python-sphinx \
46 texlive-fonts-recommended \
47 texlive-latex-extra
48debian/rules build; fakeroot debian/rules binary
49
50cd ${BUILD_HOME}
51sudo apt-get install -y --force-yes hwdata
52sudo dpkg -i *.deb
53mv *.deb ${BUILD_DEST}
54 20
55# copy from debian/control 21# copy from debian/control
56sudo apt-get install -y --force-yes autoconf \ 22sudo apt-get install -y --force-yes autoconf \
@@ -79,21 +45,7 @@ for patch in ${PATCHES}
79do 45do
80 patch -p1 < ${BUILD_SRC}/ovs_nsh_patches/v2.6.1/${patch} 46 patch -p1 < ${BUILD_SRC}/ovs_nsh_patches/v2.6.1/${patch}
81done 47done
82cd ${BUILD_HOME}; cp -r ovs ovs-dpdk
83
84cd ovs-dpdk
85cp -r ${BUILD_SRC}/openvswitch_2.6-dpdk_16.07/debian .
86cat << EOF > debian/changelog
87openvswitch-dpdk (${OVS_VER}-1.nsh) unstable; urgency=low
88 [ Open vSwitch team ]
89 * support NSH & DPDK 16.07
90
91 -- Open vSwitch team <dev@openvswitch.org> $(date --rfc-2822)
92EOF
93
94debian/rules build; fakeroot debian/rules binary
95 48
96cd ${BUILD_HOME}/ovs
97cat << EOF > debian/changelog 49cat << EOF > debian/changelog
98openvswitch (${OVS_VER}-1.nsh) unstable; urgency=low 50openvswitch (${OVS_VER}-1.nsh) unstable; urgency=low
99 [ Open vSwitch team ] 51 [ Open vSwitch team ]
@@ -105,4 +57,4 @@ debian/rules build; fakeroot debian/rules binary
105 57
106cp -r ${BUILD_HOME}/*.deb ${BUILD_HOME}/deb 58cp -r ${BUILD_HOME}/*.deb ${BUILD_HOME}/deb
107cd ${BUILD_HOME}/deb 59cd ${BUILD_HOME}/deb
108tar czvf ${BUILD_DEST}/ovs-nsh-dpdk_${DEB_ARCH}.tar.gz .; 60tar czvf ${BUILD_DEST}/ovs-nsh_${DEB_ARCH}.tar.gz .;
diff --git a/ovs_build/dpdk_16.07/debian/changelog b/ovs_build/dpdk_16.07/debian/changelog
deleted file mode 100644
index dd30f27..0000000
--- a/ovs_build/dpdk_16.07/debian/changelog
+++ /dev/null
@@ -1,3 +0,0 @@
1dpdk (16.07-1) unstable; urgency=low
2 * DPDK 16.07
3 -- DPDK team <dev@dpdk.org> Sat, 03 Sep 2016 20:00:00 +0200
diff --git a/ovs_build/dpdk_16.07/debian/compat b/ovs_build/dpdk_16.07/debian/compat
deleted file mode 100644
index ec63514..0000000
--- a/ovs_build/dpdk_16.07/debian/compat
+++ /dev/null
@@ -1 +0,0 @@
19
diff --git a/ovs_build/dpdk_16.07/debian/control b/ovs_build/dpdk_16.07/debian/control
deleted file mode 100644
index 60cf704..0000000
--- a/ovs_build/dpdk_16.07/debian/control
+++ /dev/null
@@ -1,81 +0,0 @@
1Source: dpdk
2Priority: optional
3Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
4Build-Depends: debhelper (>= 9),
5 dh-python,
6 dh-systemd (>= 1.5),
7 doxygen,
8 graphviz,
9 inkscape,
10 libcap-dev,
11 libpcap-dev,
12 libxen-dev,
13 libxenstore3.0,
14 python,
15 python-sphinx,
16 texlive-fonts-recommended,
17 texlive-latex-extra
18Standards-Version: 3.9.6
19Section: libs
20Homepage: http://www.dpdk.org
21Vcs-Original-Git: git://dpdk.org/dpdk
22Vcs-Original-Browser: http://www.dpdk.org/browse/dpdk/refs/
23Vcs-Git: https://git.launchpad.net/~ubuntu-server/dpdk
24Vcs-Browser: https://code.launchpad.net/~ubuntu-server/dpdk/+git/dpdk
25
26Package: dpdk
27Section: devel
28Architecture: amd64 i386
29Depends: libdpdk0 (= ${binary:Version}),
30 lsb-base (>= 3.2-14),
31 ${misc:Depends},
32 ${python:Depends},
33 ${shlibs:Depends}
34Suggests: linux-image-generic
35Description: Data Plane Development Kit (runtime)
36 DPDK is a set of libraries for fast packet processing. Applications run
37 in user-space and communicate directly with dedicated network interfaces.
38 This package contains the runtime environment to run DPDK applications.
39
40Package: dpdk-dev
41Section: devel
42Architecture: amd64 i386
43Depends: libdpdk0 (= ${binary:Version}), ${misc:Depends}
44Description: Data Plane Development Kit (development files)
45 DPDK is a set of libraries for fast packet processing. Applications run
46 in user-space and communicate directly with dedicated network interfaces.
47 This package contains examples and the upstream build environment. It is
48 not strictly required in order to build external applications.
49
50Package: dpdk-doc
51Section: doc
52Architecture: all
53Depends: libjs-jquery, libjs-underscore, ${misc:Depends}
54Description: Data Plane Development Kit (documentation)
55 DPDK is a set of libraries for fast packet processing. Applications run
56 in user-space and communicate directly with dedicated network interfaces.
57 This package contains the complete set of documentation and guides.
58
59Package: libdpdk0
60Architecture: amd64 i386
61Multi-Arch: same
62Pre-Depends: ${misc:Pre-Depends}
63Depends: ${misc:Depends}, ${shlibs:Depends}
64Description: Data Plane Development Kit (runtime libraries)
65 DPDK is a set of libraries for fast packet processing. Applications run
66 in user-space and communicate directly with dedicated network interfaces.
67 This package contains the runtime libraries which require at least SSE3
68 support in the CPU.
69
70Package: libdpdk-dev
71Section: libdevel
72Architecture: amd64 i386
73Multi-Arch: same
74Pre-Depends: ${misc:Pre-Depends}
75Depends: libdpdk0 (= ${binary:Version}), ${misc:Depends}
76Description: Data Plane Development Kit (basic development files)
77 DPDK is a set of libraries for fast packet processing. Applications run
78 in user-space and communicate directly with dedicated network interfaces.
79 This package contains the basic headers and library files required to
80 build external applications which will also require at least SSE3 support
81 when running.
diff --git a/ovs_build/dpdk_16.07/debian/copyright b/ovs_build/dpdk_16.07/debian/copyright
deleted file mode 100644
index 521df60..0000000
--- a/ovs_build/dpdk_16.07/debian/copyright
+++ /dev/null
@@ -1,48 +0,0 @@
1Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
2Upstream-Name: dpdk
3Source: http://dpdk.org
4
5Files: *
6Copyright: 2008-2014 Cisco Systems, Inc.
7 2012-2014 6WIND S.A.
8 1999-2015 Intel Corporation.
9 2010-2013 Tilera Corporation.
10 2012 Mellanox.
11 2007 VMware, Inc.
12 2007 Nuova Systems, Inc.
13 2014 IBM Corporation.
14License: BSD+GPLv2+LGPLv2
15 On Debian systems, the complete text of the BSD License can be
16 found in "/usr/share/common-licenses/BSD".
17 .
18 This package is free software; you can redistribute it and/or modify
19 it under the terms of the GNU General Public License as published by
20 the Free Software Foundation; either version 2 of the License, or
21 (at your option) any later version.
22 .
23 This package is distributed in the hope that it will be useful,
24 but WITHOUT ANY WARRANTY; without even the implied warranty of
25 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
26 GNU General Public License for more details.
27 .
28 You should have received a copy of the GNU General Public License
29 along with this program. If not, see <http://www.gnu.org/licenses/>
30 .
31 On Debian systems, the complete text of the GNU General
32 Public License version 2 can be found in "/usr/share/common-licenses/GPL-2".
33
34Files: debian/*
35Copyright: 2015 Canonical Ltd. <stefan.bader@canonical.com>
36Copyright: 2015, 2016 Canonical Ltd. <christian.ehrhardt@canonical.com>
37License: GPL-3
38 This program is free software: you can redistribute it and/or modify it
39 under the terms of the GNU General Public License version 3, as published
40 by the Free Software Foundation.
41 .
42 This program is distributed in the hope that it will be useful, but
43 WITHOUT ANY WARRANTY; without even the implied warranties of
44 MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR
45 PURPOSE. See the GNU General Public License for more details.
46 .
47 You should have received a copy of the GNU General Public License along
48 with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/ovs_build/dpdk_16.07/debian/dpdk-dev.dirs b/ovs_build/dpdk_16.07/debian/dpdk-dev.dirs
deleted file mode 100644
index bdac81a..0000000
--- a/ovs_build/dpdk_16.07/debian/dpdk-dev.dirs
+++ /dev/null
@@ -1 +0,0 @@
1usr/share/dpdk
diff --git a/ovs_build/dpdk_16.07/debian/dpdk-dev.install b/ovs_build/dpdk_16.07/debian/dpdk-dev.install
deleted file mode 100644
index f6eba19..0000000
--- a/ovs_build/dpdk_16.07/debian/dpdk-dev.install
+++ /dev/null
@@ -1 +0,0 @@
1debian/dpdk-sdk-env.sh /usr/share/dpdk/
diff --git a/ovs_build/dpdk_16.07/debian/dpdk-doc.README.Debian b/ovs_build/dpdk_16.07/debian/dpdk-doc.README.Debian
deleted file mode 100644
index 669bf39..0000000
--- a/ovs_build/dpdk_16.07/debian/dpdk-doc.README.Debian
+++ /dev/null
@@ -1,52 +0,0 @@
1dpdk for Debian
2---------------
3
4This package is currently compiled for the lowest possible CPU requirements.
5Which still requires at least SSE3 to be supported by the CPU.
6
7dpdk (runtime) / libdpdk0:
8
9For runtime /etc/dpdk/interfaces holds a list of PCI devices to be assigned
10to DPDK compatible drivers and /etc/dpdk/dpdk.conf allows one to define the
11number of hugepages to be reserved at boot.
12The runtime environment is not required to build applications that use
13DPDK but if those applications get packaged they should depend on the
14runtime.
15
16Since DPDK technically would be able to use all of your compatible card/driver
17combination it is required that you take care of blacklisting / whitelisting
18network cards to tell dpdk which it has to to initialize (especially true for
19virtio-pci as the normal kernel driver is considered compatible).
20
21If you are working with virtio-pci network cards it isn't a hard requirement to
22assign them to a dpdk compatible userspace driver like uio_pci_generic. But you
23have to at least unbind them from the default kernel driver (virtio-pci) to
24avoid bugs by dpdk and the kernel working on them simultaneously. It is
25recommended to reassign them to dpdk compatible drivers using
26/etc/dpdk/interfaces (just as you would with any physical card).
27
28libdpdk0 contains the shared object needed to run a program in terms of symbol
29resolution, but none of the other runtime environment pieces.
30
31dpdk-dev / libdpdk-dev:
32
33The minimum requirement for developing external applications is libdpdk-dev,
34which brings the headers and library files.
35
36In dpdk-dev is the upstream makefile environment. Sample applications, which
37are shipped in dpdk-doc, are providing makefiles.
38Those makefiles need to find the dpdk build system. To do so they need some
39environment variables defined:
40 export RTE_TARGET="$(uname -m)-default-linuxapp-gcc"
41 export RTE_SDK="/usr/share/dpdk/"
42 export RTE_INCLUDE="/usr/include/dpdk"
43Those can be set by the user to overwrite with a custom path/config. If no
44custom environment is used it is recommended to source the file
45/usr/share/dpdk/dpdk-sdk-env.sh which comes with dpdk-dev.
46If the paths ever change or there will be more/less variables needed to build
47against dpdk-dev that file will be adjusted for you.
48
49Alternatively /usr/include/dpdk/rte_config.h has to be pre-included:
50CFLAGS += -I/usr/include/dpdk -irte_config.h
51
52 -- Christian Ehrhardt <christian.ehrhardt@canonical.com> Thu, 04 Feb 2016 09:16:11 +0100
diff --git a/ovs_build/dpdk_16.07/debian/dpdk-doc.dirs b/ovs_build/dpdk_16.07/debian/dpdk-doc.dirs
deleted file mode 100644
index fcd9dfe..0000000
--- a/ovs_build/dpdk_16.07/debian/dpdk-doc.dirs
+++ /dev/null
@@ -1 +0,0 @@
1usr/share/doc/dpdk
diff --git a/ovs_build/dpdk_16.07/debian/dpdk-init b/ovs_build/dpdk_16.07/debian/dpdk-init
deleted file mode 100755
index 86eda2c..0000000
--- a/ovs_build/dpdk_16.07/debian/dpdk-init
+++ /dev/null
@@ -1,251 +0,0 @@
1#!/bin/sh
2#
3# dpdk-init: startup script to initialize a dpdk runtime environment
4#
5# Copyright 2015-2016 Canonical Ltd.
6# Autor: Stefan Bader <stefan.bader@canonical.com>
7# Autor: Christian Ehrhardt <christian.ehrhardt@canonical.com>
8#
9# This program is free software: you can redistribute it and/or modify
10# it under the terms of the GNU General Public License version 3,
11# as published by the Free Software Foundation.
12#
13# This program is distributed in the hope that it will be useful,
14# but WITHOUT ANY WARRANTY; without even the implied warranty of
15# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16# GNU General Public License for more details.
17#
18# You should have received a copy of the GNU General Public License
19# along with this program. If not, see <http://www.gnu.org/licenses/>.
20#
21set -e
22
23DPDK_BIND="/sbin/dpdk_nic_bind"
24DPDK_INTERF="/etc/dpdk/interfaces"
25
26
27# pagesize supports [G|g]/[M|m]/[K|k]
28get_kbytes() {
29 local unit
30 local num
31 unit=$(echo "${1}" | sed 's/[0-9]*//g')
32 num=$(echo "${1}" | sed 's/[^0-9]*//g')
33 case ${unit} in
34 *g | *G)
35 echo $((num*1024*1024))
36 ;;
37 *m | *M)
38 echo $((num*1024))
39 ;;
40 *k | *K)
41 echo $((num))
42 ;;
43 *)
44 echo $((num/1024))
45 ;;
46 esac
47}
48
49get_default_hpgsz() {
50 default_hpgsz=$(grep "Hugepagesize:" /proc/meminfo \
51 | sed 's/^Hugepagesize:\s*//g' | sed 's/\s*kB$//g')
52 echo "${default_hpgsz}"
53}
54
55get_hugetlbfs_mountpoint() {
56 local requested_hpgsz
57 local mp_hpgsz
58 requested_hpgsz=$(get_kbytes "${1}")
59
60 grep hugetlbfs /proc/mounts | while read \
61 mntfrom mntpoint mntfstype mntopt mntdump mntfsck; do
62
63 # check if the current muntpoint is of the requested huge page size
64 case ${mntopt} in
65 *pagesize=*)
66 mp_hpgsz=$(echo "${mntopt}" | sed 's/.*pagesize=//g' | sed 's/,.*//g')
67 mp_hpgsz=$(get_kbytes "${mp_hpgsz}")
68 ;;
69 *)
70 mp_hpgsz=$(get_default_hpgsz)
71 ;;
72 esac
73 if [ "${requested_hpgsz}" -eq "${mp_hpgsz}" ]; then
74 echo "${mntpoint}"
75 return
76 fi
77 done
78}
79
80_mount_hugetlbfs() {
81 local MNT="/dev/hugepages"
82 local MNTOPTS=""
83 local requested_hpgsz
84 local default_hpgsz
85 requested_hpgsz=$(get_kbytes "${1}")
86 default_hpgsz=$(get_default_hpgsz)
87
88 # kernel might not support the requested size
89 if [ ! -d "/sys/kernel/mm/hugepages/hugepages-${requested_hpgsz}kB" ]; then
90 echo "WARNING: requested page size of ${requested_hpgsz}kB " \
91 "not supported by the kernel"
92 return 0
93 fi
94
95 # special case if this is not the default huge page size
96 if [ "${requested_hpgsz}" -ne "${default_hpgsz}" ]; then
97 MNT="${MNT}-${requested_hpgsz}"
98 MNTOPTS="pagesize=${requested_hpgsz}K"
99 fi
100
101 if [ ! -e "${MNT}" ]; then
102 mkdir "${MNT}"
103 if [ $? -ne 0 ]; then
104 echo "Could not create directory ${MNT}!" >&2
105 return 1
106 fi
107 fi
108 mount -thugetlbfs hugetlbfs "${MNT}" -o "${MNTOPTS}"
109 return $?
110}
111
112#
113# The DPDK library will use the first mounted instance it finds for a given
114# page size. so if there is already one for a given size there is no need to
115# create another for the same huge page size.
116#
117mount_hugetlbfs() {
118 if [ ! -r /etc/dpdk/dpdk.conf ]; then
119 return 1
120 fi
121 . /etc/dpdk/dpdk.conf
122
123 # if a page size is requested, there has to be a mountpoint for that size
124 if [ -n "${NR_2M_PAGES}" -a -z "$(get_hugetlbfs_mountpoint '2M')" ]; then
125 _mount_hugetlbfs 2M
126 fi
127 if [ -n "${NR_1G_PAGES}" -a -z "$(get_hugetlbfs_mountpoint '1G')" ]; then
128 _mount_hugetlbfs 1G
129 fi
130}
131
132_setup_hugepages() {
133 MMDIR="/sys/kernel/mm/hugepages/${1}"
134 PAGES=${2}
135
136 if [ "$PAGES" != "" ]; then
137 if [ "$PAGES" -gt 0 ]; then
138 if [ -d "$MMDIR" -a -w "$MMDIR/nr_hugepages" ]; then
139 # increases the chance to allocate enough huge pages
140 # configurable, since it comes at a perf penality
141 if [ "$DROPCACHE_BEFORE_HP_ALLOC" = "1" ]; then
142 echo 3 > /proc/sys/vm/drop_caches
143 fi
144
145 echo "$PAGES" > "$MMDIR/nr_hugepages"
146
147 GOTPAGES=$(cat "$MMDIR/nr_hugepages")
148 if [ "$GOTPAGES" -lt "$PAGES" ]; then
149 echo "WARNING: could not allocate $PAGES at " \
150 "$MMDIR/nr_hugepages (only got $GOTPAGES)."
151 fi
152 else
153 echo "WARNING: $MMDIR/nr_hugepages not found/writable"
154 fi
155 fi
156 fi
157}
158
159#
160# Reserve a certain amount of hugepages (defined in /etc/dpdk.conf)
161#
162setup_hugepages() {
163 if [ ! -r /etc/dpdk/dpdk.conf ]; then
164 return 1
165 fi
166 . /etc/dpdk/dpdk.conf
167
168 _setup_hugepages "hugepages-2048kB" "$NR_2M_PAGES"
169 _setup_hugepages "hugepages-1048576kB" "$NR_1G_PAGES"
170
171 # dpdk uses 2*#hugepages mappings, increase for huge systems LP #1507921
172 if [ -d /sys/kernel/mm/hugepages ]; then
173 max_map_count=$(awk -v pad=65530 '{tot+=$1}END{print tot*2+pad}' \
174 /sys/kernel/mm/hugepages/hugepages-*/nr_hugepages)
175 sysctl -q vm.max_map_count="${max_map_count:-65530}"
176 fi
177
178 return 0
179}
180
181#
182# Allow NICs to be automatically bound to DPDK compatible drivers on boot.
183#
184bind_interfaces() {
185 if [ ! -r "$DPDK_INTERF" ]; then
186 return 0
187 fi
188 grep -v '^[ \t]*#' "$DPDK_INTERF" | while read BUS ID MOD; do
189 if [ "$BUS" = "" -o "$ID" = "" -o "$MOD" = "" ]; then
190 echo "WARNING: incomplete spec in $DPDK_INTERF" \
191 " - BUS '$BUS' ID '$ID' MOD '$MOD'"
192 continue
193 fi
194 if [ "$BUS" != "pci" ]; then
195 echo "WARNING: incompatible bus '$BUS' in $DPDK_INTERF"
196 continue
197 fi
198
199 SYSFSPATH="/sys/bus/$BUS/devices/$ID"
200 if [ ! -e "$SYSFSPATH" ]; then
201 echo "WARNING: invalid pci ID '$ID' in $DPDK_INTERF" \
202 " - '$SYSFSPATH' does not exist"
203 continue
204 fi
205 if [ -L "$SYSFSPATH/driver" ]; then
206 CUR=$(readlink "$SYSFSPATH/driver")
207 CUR=$(basename "$CUR")
208 else
209 # device existing, but currently unregistered
210 CUR=""
211 fi
212 if [ "$MOD" != "$CUR" ]; then
213 modprobe -q "$MOD" || true
214 # cloud img have no linux-image-extra initially (uip_pci_generic)
215 # so check if the module is available (loadable/built in)
216 if [ -e "/sys/bus/pci/drivers/${MOD}" ]; then
217 echo "Reassigning pci:$ID to $MOD"
218 $DPDK_BIND -b "$MOD" "$ID"
219 else
220 echo "Warning: failed assigning pci:$ID," \
221 " module $MOD not available"
222 fi
223 else
224 echo "pci:$ID already assigned to $MOD"
225 fi
226 done
227}
228
229
230
231case "$1" in
232start)
233 mount_hugetlbfs
234 setup_hugepages
235 bind_interfaces
236 ;;
237stop)
238 ;;
239reload|force-reload)
240 setup_hugepages
241 bind_interfaces
242 ;;
243status)
244 $DPDK_BIND --status
245 ;;
246*)
247 echo "Usage: $0 {start|stop|reload|force-reload|status}"
248 exit 1
249 ;;
250esac
251
diff --git a/ovs_build/dpdk_16.07/debian/dpdk-sdk-env.sh b/ovs_build/dpdk_16.07/debian/dpdk-sdk-env.sh
deleted file mode 100755
index 2fc5570..0000000
--- a/ovs_build/dpdk_16.07/debian/dpdk-sdk-env.sh
+++ /dev/null
@@ -1,3 +0,0 @@
1export RTE_TARGET="$(uname -m)-default-linuxapp-gcc"
2export RTE_SDK="/usr/share/dpdk/"
3export RTE_INCLUDE="/usr/include/dpdk"
diff --git a/ovs_build/dpdk_16.07/debian/dpdk.conf b/ovs_build/dpdk_16.07/debian/dpdk.conf
deleted file mode 100644
index fb4572d..0000000
--- a/ovs_build/dpdk_16.07/debian/dpdk.conf
+++ /dev/null
@@ -1,54 +0,0 @@
1#
2# The number of 2M hugepages to reserve on system boot
3#
4# Default is 0
5# To e.g. let it reserve 64x 2M Hugepages set:
6# NR_2M_PAGES=64
7
8#
9# The number of 1G hugepages to reserve on system boot
10#
11# Default is 0
12# To e.g. let it reserve 2x 1G Hugepages set:
13# NR_1G_PAGES=2
14
15#
16# Dropping slab and pagecache can help to successfully allocate hugepages,
17# especially later in the lifecycle of a system.
18# This comes at the cost of loosing all slab and pagecache on (re)start
19# of the dpdk service - therefore the default is off.
20#
21# Default is 0
22# Set to 1 to enable it
23#DROPCACHE_BEFORE_HP_ALLOC=0
24
25# The DPDK library will use the first mounted hugetlbfs.
26# The init scripts try to ensure there is at least one default hugetlbfs
27# mountpoint on start.
28# If you have multiple hugetlbfs mountpoints for a complex (e.g. specific numa
29# policies) setup it should be controlled by the admin instead of this init
30# script. In that case specific mountpoints can be provided as parameters to
31# the DPDK library.
32
33# Hardware may support other granularities of hugepages (like 4M). But the
34# larger the hugepages the earlier those should be allocated.
35# Note: the dpdk init scripts will report warnings, but not fail if they could
36# not allocate the requested amount of hugepages.
37# The more or the larger the hugepages to be allocated are, the more it is
38# recommended to do the reservation as kernel commandline arguments.
39# To do so edit /etc/default/grub: GRUB_CMDLINE_LINUX_DEFAULT
40# and add [hugepagesz=xx] hugepages=yy ...
41#
42# Kernel commandline config:
43# hugepagesz sets the size for the next hugepages reservation (default 2M)
44# hugepages reserves the given number of hugepages of the size set before
45#
46# After modifying /etc/default/grub, the command "update-grub" has to be
47# run in order to re-generate the grub config files. The new values will
48# be used after next reboot.
49#
50# example:
51# GRUB_CMDLINE_LINUX_DEFAULT="... hugepages=16 hugepagesz=1G hugepages=2"
52#
53# If the system supports it, this will reserve 16x 2M pages and 2x 1G pages.
54#
diff --git a/ovs_build/dpdk_16.07/debian/dpdk.dirs b/ovs_build/dpdk_16.07/debian/dpdk.dirs
deleted file mode 100644
index 29ca563..0000000
--- a/ovs_build/dpdk_16.07/debian/dpdk.dirs
+++ /dev/null
@@ -1,5 +0,0 @@
1etc/dpdk
2lib/dpdk
3sbin
4usr/bin
5usr/lib/dpdk
diff --git a/ovs_build/dpdk_16.07/debian/dpdk.init b/ovs_build/dpdk_16.07/debian/dpdk.init
deleted file mode 100644
index 921c38b..0000000
--- a/ovs_build/dpdk_16.07/debian/dpdk.init
+++ /dev/null
@@ -1,57 +0,0 @@
1#!/bin/sh
2
3### BEGIN INIT INFO
4# Provides: dpdk
5# Required-Start: $local_fs
6# Required-Stop: $local_fs
7# Default-Start: S
8# Default-Stop: 0 1 6
9# Short-Description: start dpdk runtime environment
10### END INIT INFO
11
12set -e
13
14PATH="/sbin:/bin:/usr/bin"
15
16[ -d /lib/dpdk ] || exit 0
17
18# Define LSB log_* functions.
19# Depend on lsb-base (>= 3.2-14) to ensure that this file is present
20# and status_of_proc is working.
21. /lib/lsb/init-functions
22
23error=0
24case "$1" in
25start)
26 log_action_begin_msg "Starting DPDK environment" "dpdk"
27 output=$(/lib/dpdk/dpdk-init start 2>&1) || error="$?"
28 if [ ! -z "$output" ]; then
29 echo "$output" | while read line; do
30 log_action_cont_msg "$line"
31 done
32 fi
33 log_action_end_msg $error
34 exit $error
35 ;;
36stop)
37 ;;
38restart|force-reload)
39 ;;
40status)
41 output=$(/lib/dpdk/dpdk-init --status 2>&1) || error="$?"
42 if [ ! -z "$output" ]; then
43 echo "$output" | while read line; do
44 log_action_cont_msg "$line"
45 done
46 fi
47 log_action_end_msg $error
48 exit $error
49 ;;
50*)
51 echo "Usage: $0 {start|stop|restart|force-reload|status}"
52 exit 1
53 ;;
54esac
55
56exit 0
57
diff --git a/ovs_build/dpdk_16.07/debian/dpdk.install b/ovs_build/dpdk_16.07/debian/dpdk.install
deleted file mode 100644
index 24c8d45..0000000
--- a/ovs_build/dpdk_16.07/debian/dpdk.install
+++ /dev/null
@@ -1,2 +0,0 @@
1debian/dpdk-init lib/dpdk/
2debian/dpdk.conf etc/dpdk/
diff --git a/ovs_build/dpdk_16.07/debian/dpdk.interfaces b/ovs_build/dpdk_16.07/debian/dpdk.interfaces
deleted file mode 100644
index 470a40e..0000000
--- a/ovs_build/dpdk_16.07/debian/dpdk.interfaces
+++ /dev/null
@@ -1,13 +0,0 @@
1#
2# <bus> Currently only "pci" is supported
3# <id> Device ID on the specified bus
4# <driver> Driver to bind against (vfio-pci or uio_pci_generic)
5#
6# Be aware that the two dpdk compatible drivers uio_pci_generic and vfio-pci are
7# part of linux-image-extra-<VERSION> package.
8# This package is not always installed by default - for example in cloud-images.
9# So please install it in case you run into missing module issues.
10#
11# <bus> <id> <driver>
12# pci 0000:04:00.0 vfio-pci
13# pci 0000:04:00.1 uio_pci_generic
diff --git a/ovs_build/dpdk_16.07/debian/dpdk.service b/ovs_build/dpdk_16.07/debian/dpdk.service
deleted file mode 100644
index 09ef8be..0000000
--- a/ovs_build/dpdk_16.07/debian/dpdk.service
+++ /dev/null
@@ -1,12 +0,0 @@
1[Unit]
2Description=DPDK runtime environment
3DefaultDependencies=false
4After=network-pre.target local-fs.target
5
6[Service]
7Type=oneshot
8RemainAfterExit=yes
9ExecStart=/lib/dpdk/dpdk-init start
10
11[Install]
12WantedBy=multi-user.target
diff --git a/ovs_build/dpdk_16.07/debian/libdpdk-dev.dirs b/ovs_build/dpdk_16.07/debian/libdpdk-dev.dirs
deleted file mode 100644
index e43b95c..0000000
--- a/ovs_build/dpdk_16.07/debian/libdpdk-dev.dirs
+++ /dev/null
@@ -1 +0,0 @@
1usr/include
diff --git a/ovs_build/dpdk_16.07/debian/libdpdk0.dirs b/ovs_build/dpdk_16.07/debian/libdpdk0.dirs
deleted file mode 100644
index 6845771..0000000
--- a/ovs_build/dpdk_16.07/debian/libdpdk0.dirs
+++ /dev/null
@@ -1 +0,0 @@
1usr/lib
diff --git a/ovs_build/dpdk_16.07/debian/libdpdk0.symbols.amd64 b/ovs_build/dpdk_16.07/debian/libdpdk0.symbols.amd64
deleted file mode 100644
index 743b1e9..0000000
--- a/ovs_build/dpdk_16.07/debian/libdpdk0.symbols.amd64
+++ /dev/null
@@ -1,580 +0,0 @@
1libdpdk.so.0 libdpdk0 #MINVER#
2* Build-Depends-Package: libdpdk-dev
3 DPDK_2.0@DPDK_2.0 2.2
4 DPDK_2.1@DPDK_2.1 2.2
5 DPDK_2.2@DPDK_2.2 2.2
6 __rte_panic@DPDK_2.0 2.2
7 _rte_eth_dev_callback_process@DPDK_2.2 2.2
8 cirbuf_add_buf_head@DPDK_2.0 2.2
9 cirbuf_add_buf_tail@DPDK_2.0 2.2
10 cirbuf_add_head@DPDK_2.0 2.2
11 cirbuf_add_head_safe@DPDK_2.0 2.2
12 cirbuf_add_tail@DPDK_2.0 2.2
13 cirbuf_add_tail_safe@DPDK_2.0 2.2
14 cirbuf_align_left@DPDK_2.0 2.2
15 cirbuf_align_right@DPDK_2.0 2.2
16 cirbuf_del_buf_head@DPDK_2.0 2.2
17 cirbuf_del_buf_tail@DPDK_2.0 2.2
18 cirbuf_del_head@DPDK_2.0 2.2
19 cirbuf_del_head_safe@DPDK_2.0 2.2
20 cirbuf_del_tail@DPDK_2.0 2.2
21 cirbuf_del_tail_safe@DPDK_2.0 2.2
22 cirbuf_get_buf_head@DPDK_2.0 2.2
23 cirbuf_get_buf_tail@DPDK_2.0 2.2
24 cirbuf_get_head@DPDK_2.0 2.2
25 cirbuf_get_tail@DPDK_2.0 2.2
26 cirbuf_init@DPDK_2.0 2.2
27 cmdline_complete@DPDK_2.0 2.2
28 cmdline_complete_get_elt_string@DPDK_2.0 2.2
29 cmdline_complete_get_nb_string@DPDK_2.0 2.2
30 cmdline_file_new@DPDK_2.0 2.2
31 cmdline_free@DPDK_2.0 2.2
32 cmdline_get_help_etheraddr@DPDK_2.0 2.2
33 cmdline_get_help_ipaddr@DPDK_2.0 2.2
34 cmdline_get_help_num@DPDK_2.0 2.2
35 cmdline_get_help_portlist@DPDK_2.0 2.2
36 cmdline_get_help_string@DPDK_2.0 2.2
37 cmdline_in@DPDK_2.0 2.2
38 cmdline_interact@DPDK_2.0 2.2
39 cmdline_isendoftoken@DPDK_2.0 2.2
40 cmdline_new@DPDK_2.0 2.2
41 cmdline_parse@DPDK_2.0 2.2
42 cmdline_parse_etheraddr@DPDK_2.0 2.2
43 cmdline_parse_ipaddr@DPDK_2.0 2.2
44 cmdline_parse_num@DPDK_2.0 2.2
45 cmdline_parse_portlist@DPDK_2.0 2.2
46 cmdline_parse_string@DPDK_2.0 2.2
47 cmdline_poll@DPDK_2.1 2.2
48 cmdline_printf@DPDK_2.0 2.2
49 cmdline_quit@DPDK_2.0 2.2
50 cmdline_set_prompt@DPDK_2.0 2.2
51 cmdline_stdin_exit@DPDK_2.0 2.2
52 cmdline_stdin_new@DPDK_2.0 2.2
53 cmdline_token_etheraddr_ops@DPDK_2.0 2.2
54 cmdline_token_ipaddr_ops@DPDK_2.0 2.2
55 cmdline_token_num_ops@DPDK_2.0 2.2
56 cmdline_token_portlist_ops@DPDK_2.0 2.2
57 cmdline_token_string_ops@DPDK_2.0 2.2
58 cmdline_write_char@DPDK_2.0 2.2
59 devargs_list@DPDK_2.0 2.2
60 eal_parse_sysfs_value@DPDK_2.0 2.2
61 eal_timer_source@DPDK_2.0 2.2
62 eth_dev_null_create@DPDK_2.2 2.2
63 lcore_config@DPDK_2.0 2.2
64 pci_device_list@DPDK_2.0 2.2
65 pci_driver_list@DPDK_2.0 2.2
66 per_lcore__lcore_id@DPDK_2.0 2.2
67 per_lcore__rte_errno@DPDK_2.0 2.2
68 rdline_add_history@DPDK_2.0 2.2
69 rdline_char_in@DPDK_2.0 2.2
70 rdline_clear_history@DPDK_2.0 2.2
71 rdline_get_buffer@DPDK_2.0 2.2
72 rdline_get_history_item@DPDK_2.0 2.2
73 rdline_init@DPDK_2.0 2.2
74 rdline_newline@DPDK_2.0 2.2
75 rdline_quit@DPDK_2.0 2.2
76 rdline_redisplay@DPDK_2.0 2.2
77 rdline_reset@DPDK_2.0 2.2
78 rdline_restart@DPDK_2.0 2.2
79 rdline_stop@DPDK_2.0 2.2
80 rte_acl_add_rules@DPDK_2.0 2.2
81 rte_acl_build@DPDK_2.0 2.2
82 rte_acl_classify@DPDK_2.0 2.2
83 rte_acl_classify_alg@DPDK_2.0 2.2
84 rte_acl_classify_scalar@DPDK_2.0 2.2
85 rte_acl_create@DPDK_2.0 2.2
86 rte_acl_dump@DPDK_2.0 2.2
87 rte_acl_find_existing@DPDK_2.0 2.2
88 rte_acl_free@DPDK_2.0 2.2
89 rte_acl_list_dump@DPDK_2.0 2.2
90 rte_acl_reset@DPDK_2.0 2.2
91 rte_acl_reset_rules@DPDK_2.0 2.2
92 rte_acl_set_ctx_classify@DPDK_2.0 2.2
93 rte_approx@DPDK_2.0 2.2
94 rte_calloc@DPDK_2.0 2.2
95 rte_calloc_socket@DPDK_2.0 2.2
96 rte_cfgfile_close@DPDK_2.0 2.2
97 rte_cfgfile_get_entry@DPDK_2.0 2.2
98 rte_cfgfile_has_entry@DPDK_2.0 2.2
99 rte_cfgfile_has_section@DPDK_2.0 2.2
100 rte_cfgfile_load@DPDK_2.0 2.2
101 rte_cfgfile_num_sections@DPDK_2.0 2.2
102 rte_cfgfile_section_entries@DPDK_2.0 2.2
103 rte_cfgfile_section_num_entries@DPDK_2.0 2.2
104 rte_cfgfile_sections@DPDK_2.0 2.2
105 rte_cpu_check_supported@DPDK_2.0 2.2
106 rte_cryptodev_callback_register@DPDK_2.2 2.2
107 rte_cryptodev_callback_unregister@DPDK_2.2 2.2
108 rte_cryptodev_close@DPDK_2.2 2.2
109 rte_cryptodev_configure@DPDK_2.2 2.2
110 rte_cryptodev_count@DPDK_2.2 2.2
111 rte_cryptodev_count_devtype@DPDK_2.2 2.2
112 rte_cryptodev_create_vdev@DPDK_2.2 2.2
113 rte_cryptodev_get_dev_id@DPDK_2.2 2.2
114 rte_cryptodev_info_get@DPDK_2.2 2.2
115 rte_cryptodev_pmd_allocate@DPDK_2.2 2.2
116 rte_cryptodev_pmd_callback_process@DPDK_2.2 2.2
117 rte_cryptodev_pmd_driver_register@DPDK_2.2 2.2
118 rte_cryptodev_pmd_release_device@DPDK_2.2 2.2
119 rte_cryptodev_pmd_virtual_dev_init@DPDK_2.2 2.2
120 rte_cryptodev_queue_pair_count@DPDK_2.2 2.2
121 rte_cryptodev_queue_pair_setup@DPDK_2.2 2.2
122 rte_cryptodev_queue_pair_start@DPDK_2.2 2.2
123 rte_cryptodev_queue_pair_stop@DPDK_2.2 2.2
124 rte_cryptodev_session_create@DPDK_2.2 2.2
125 rte_cryptodev_session_free@DPDK_2.2 2.2
126 rte_cryptodev_socket_id@DPDK_2.2 2.2
127 rte_cryptodev_start@DPDK_2.2 2.2
128 rte_cryptodev_stats_get@DPDK_2.2 2.2
129 rte_cryptodev_stats_reset@DPDK_2.2 2.2
130 rte_cryptodev_stop@DPDK_2.2 2.2
131 rte_cryptodevs@DPDK_2.2 2.2
132 rte_ctrlmbuf_init@DPDK_2.0 2.2
133 rte_cycles_vmware_tsc_map@DPDK_2.0 2.2
134 rte_delay_us@DPDK_2.0 2.2
135 rte_distributor_clear_returns@DPDK_2.0 2.2
136 rte_distributor_create@DPDK_2.0 2.2
137 rte_distributor_flush@DPDK_2.0 2.2
138 rte_distributor_get_pkt@DPDK_2.0 2.2
139 rte_distributor_poll_pkt@DPDK_2.0 2.2
140 rte_distributor_process@DPDK_2.0 2.2
141 rte_distributor_request_pkt@DPDK_2.0 2.2
142 rte_distributor_return_pkt@DPDK_2.0 2.2
143 rte_distributor_returned_pkts@DPDK_2.0 2.2
144 rte_dom0_mempool_create@DPDK_2.0 2.2
145 rte_dump_physmem_layout@DPDK_2.0 2.2
146 rte_dump_registers@DPDK_2.0 2.2
147 rte_dump_stack@DPDK_2.0 2.2
148 rte_dump_tailq@DPDK_2.0 2.2
149 rte_eal_alarm_cancel@DPDK_2.0 2.2
150 rte_eal_alarm_set@DPDK_2.0 2.2
151 rte_eal_dev_init@DPDK_2.0 2.2
152 rte_eal_devargs_add@DPDK_2.0 2.2
153 rte_eal_devargs_dump@DPDK_2.0 2.2
154 rte_eal_devargs_type_count@DPDK_2.0 2.2
155 rte_eal_driver_register@DPDK_2.0 2.2
156 rte_eal_driver_unregister@DPDK_2.0 2.2
157 rte_eal_get_configuration@DPDK_2.0 2.2
158 rte_eal_get_lcore_state@DPDK_2.0 2.2
159 rte_eal_get_physmem_layout@DPDK_2.0 2.2
160 rte_eal_get_physmem_size@DPDK_2.0 2.2
161 rte_eal_has_hugepages@DPDK_2.0 2.2
162 rte_eal_init@DPDK_2.0 2.2
163 rte_eal_iopl_init@DPDK_2.0 2.2
164 rte_eal_lcore_role@DPDK_2.0 2.2
165 rte_eal_mp_remote_launch@DPDK_2.0 2.2
166 rte_eal_mp_wait_lcore@DPDK_2.0 2.2
167 rte_eal_parse_devargs_str@DPDK_2.0 2.2
168 rte_eal_pci_detach@DPDK_2.1 2.2
169 rte_eal_pci_dump@DPDK_2.0 2.2
170 rte_eal_pci_probe@DPDK_2.0 2.2
171 rte_eal_pci_probe_one@DPDK_2.0 2.2
172 rte_eal_pci_read_config@DPDK_2.1 2.2
173 rte_eal_pci_register@DPDK_2.0 2.2
174 rte_eal_pci_scan@DPDK_2.0 2.2
175 rte_eal_pci_unregister@DPDK_2.0 2.2
176 rte_eal_pci_write_config@DPDK_2.1 2.2
177 rte_eal_process_type@DPDK_2.0 2.2
178 rte_eal_remote_launch@DPDK_2.0 2.2
179 rte_eal_tailq_lookup@DPDK_2.0 2.2
180 rte_eal_tailq_register@DPDK_2.0 2.2
181 rte_eal_vdev_init@DPDK_2.0 2.2
182 rte_eal_vdev_uninit@DPDK_2.0 2.2
183 rte_eal_wait_lcore@DPDK_2.0 2.2
184 rte_epoll_ctl@DPDK_2.1 2.2
185 rte_epoll_wait@DPDK_2.1 2.2
186 rte_eth_add_rx_callback@DPDK_2.2 2.2
187 rte_eth_add_tx_callback@DPDK_2.2 2.2
188 rte_eth_allmulticast_disable@DPDK_2.2 2.2
189 rte_eth_allmulticast_enable@DPDK_2.2 2.2
190 rte_eth_allmulticast_get@DPDK_2.2 2.2
191 rte_eth_bond_8023ad_conf_get@DPDK_2.0 2.2
192 rte_eth_bond_8023ad_setup@DPDK_2.0 2.2
193 rte_eth_bond_active_slaves_get@DPDK_2.0 2.2
194 rte_eth_bond_create@DPDK_2.0 2.2
195 rte_eth_bond_free@DPDK_2.1 2.2
196 rte_eth_bond_link_monitoring_set@DPDK_2.0 2.2
197 rte_eth_bond_mac_address_reset@DPDK_2.0 2.2
198 rte_eth_bond_mac_address_set@DPDK_2.0 2.2
199 rte_eth_bond_mode_get@DPDK_2.0 2.2
200 rte_eth_bond_mode_set@DPDK_2.0 2.2
201 rte_eth_bond_primary_get@DPDK_2.0 2.2
202 rte_eth_bond_primary_set@DPDK_2.0 2.2
203 rte_eth_bond_slave_add@DPDK_2.0 2.2
204 rte_eth_bond_slave_remove@DPDK_2.0 2.2
205 rte_eth_bond_slaves_get@DPDK_2.0 2.2
206 rte_eth_bond_xmit_policy_get@DPDK_2.0 2.2
207 rte_eth_bond_xmit_policy_set@DPDK_2.0 2.2
208 rte_eth_copy_pci_info@DPDK_2.2 2.2
209 rte_eth_dev_allocate@DPDK_2.2 2.2
210 rte_eth_dev_allocated@DPDK_2.2 2.2
211 rte_eth_dev_attach@DPDK_2.2 2.2
212 rte_eth_dev_callback_register@DPDK_2.2 2.2
213 rte_eth_dev_callback_unregister@DPDK_2.2 2.2
214 rte_eth_dev_close@DPDK_2.2 2.2
215 rte_eth_dev_configure@DPDK_2.2 2.2
216 rte_eth_dev_count@DPDK_2.2 2.2
217 rte_eth_dev_default_mac_addr_set@DPDK_2.2 2.2
218 rte_eth_dev_detach@DPDK_2.2 2.2
219 rte_eth_dev_filter_ctrl@DPDK_2.2 2.2
220 rte_eth_dev_filter_supported@DPDK_2.2 2.2
221 rte_eth_dev_flow_ctrl_get@DPDK_2.2 2.2
222 rte_eth_dev_flow_ctrl_set@DPDK_2.2 2.2
223 rte_eth_dev_get_dcb_info@DPDK_2.2 2.2
224 rte_eth_dev_get_eeprom@DPDK_2.2 2.2
225 rte_eth_dev_get_eeprom_length@DPDK_2.2 2.2
226 rte_eth_dev_get_mtu@DPDK_2.2 2.2
227 rte_eth_dev_get_reg_info@DPDK_2.2 2.2
228 rte_eth_dev_get_reg_length@DPDK_2.2 2.2
229 rte_eth_dev_get_vlan_offload@DPDK_2.2 2.2
230 rte_eth_dev_info_get@DPDK_2.2 2.2
231 rte_eth_dev_is_valid_port@DPDK_2.2 2.2
232 rte_eth_dev_mac_addr_add@DPDK_2.2 2.2
233 rte_eth_dev_mac_addr_remove@DPDK_2.2 2.2
234 rte_eth_dev_priority_flow_ctrl_set@DPDK_2.2 2.2
235 rte_eth_dev_release_port@DPDK_2.2 2.2
236 rte_eth_dev_rss_hash_conf_get@DPDK_2.2 2.2
237 rte_eth_dev_rss_hash_update@DPDK_2.2 2.2
238 rte_eth_dev_rss_reta_query@DPDK_2.2 2.2
239 rte_eth_dev_rss_reta_update@DPDK_2.2 2.2
240 rte_eth_dev_rx_intr_ctl@DPDK_2.2 2.2
241 rte_eth_dev_rx_intr_ctl_q@DPDK_2.2 2.2
242 rte_eth_dev_rx_intr_disable@DPDK_2.2 2.2
243 rte_eth_dev_rx_intr_enable@DPDK_2.2 2.2
244 rte_eth_dev_rx_queue_start@DPDK_2.2 2.2
245 rte_eth_dev_rx_queue_stop@DPDK_2.2 2.2
246 rte_eth_dev_set_eeprom@DPDK_2.2 2.2
247 rte_eth_dev_set_link_down@DPDK_2.2 2.2
248 rte_eth_dev_set_link_up@DPDK_2.2 2.2
249 rte_eth_dev_set_mc_addr_list@DPDK_2.2 2.2
250 rte_eth_dev_set_mtu@DPDK_2.2 2.2
251 rte_eth_dev_set_rx_queue_stats_mapping@DPDK_2.2 2.2
252 rte_eth_dev_set_tx_queue_stats_mapping@DPDK_2.2 2.2
253 rte_eth_dev_set_vf_rx@DPDK_2.2 2.2
254 rte_eth_dev_set_vf_rxmode@DPDK_2.2 2.2
255 rte_eth_dev_set_vf_tx@DPDK_2.2 2.2
256 rte_eth_dev_set_vf_vlan_filter@DPDK_2.2 2.2
257 rte_eth_dev_set_vlan_ether_type@DPDK_2.2 2.2
258 rte_eth_dev_set_vlan_offload@DPDK_2.2 2.2
259 rte_eth_dev_set_vlan_pvid@DPDK_2.2 2.2
260 rte_eth_dev_set_vlan_strip_on_queue@DPDK_2.2 2.2
261 rte_eth_dev_socket_id@DPDK_2.2 2.2
262 rte_eth_dev_start@DPDK_2.2 2.2
263 rte_eth_dev_stop@DPDK_2.2 2.2
264 rte_eth_dev_tx_queue_start@DPDK_2.2 2.2
265 rte_eth_dev_tx_queue_stop@DPDK_2.2 2.2
266 rte_eth_dev_uc_all_hash_table_set@DPDK_2.2 2.2
267 rte_eth_dev_uc_hash_table_set@DPDK_2.2 2.2
268 rte_eth_dev_udp_tunnel_add@DPDK_2.2 2.2
269 rte_eth_dev_udp_tunnel_delete@DPDK_2.2 2.2
270 rte_eth_dev_vlan_filter@DPDK_2.2 2.2
271 rte_eth_devices@DPDK_2.2 2.2
272 rte_eth_dma_zone_reserve@DPDK_2.2 2.2
273 rte_eth_driver_register@DPDK_2.2 2.2
274 rte_eth_from_ring@DPDK_2.2 2.2
275 rte_eth_from_rings@DPDK_2.0 2.2
276 rte_eth_led_off@DPDK_2.2 2.2
277 rte_eth_led_on@DPDK_2.2 2.2
278 rte_eth_link_get@DPDK_2.2 2.2
279 rte_eth_link_get_nowait@DPDK_2.2 2.2
280 rte_eth_macaddr_get@DPDK_2.2 2.2
281 rte_eth_mirror_rule_reset@DPDK_2.2 2.2
282 rte_eth_mirror_rule_set@DPDK_2.2 2.2
283 rte_eth_promiscuous_disable@DPDK_2.2 2.2
284 rte_eth_promiscuous_enable@DPDK_2.2 2.2
285 rte_eth_promiscuous_get@DPDK_2.2 2.2
286 rte_eth_remove_rx_callback@DPDK_2.2 2.2
287 rte_eth_remove_tx_callback@DPDK_2.2 2.2
288 rte_eth_rx_queue_info_get@DPDK_2.2 2.2
289 rte_eth_rx_queue_setup@DPDK_2.2 2.2
290 rte_eth_set_queue_rate_limit@DPDK_2.2 2.2
291 rte_eth_set_vf_rate_limit@DPDK_2.2 2.2
292 rte_eth_stats_get@DPDK_2.2 2.2
293 rte_eth_stats_reset@DPDK_2.2 2.2
294 rte_eth_timesync_adjust_time@DPDK_2.2 2.2
295 rte_eth_timesync_disable@DPDK_2.2 2.2
296 rte_eth_timesync_enable@DPDK_2.2 2.2
297 rte_eth_timesync_read_rx_timestamp@DPDK_2.2 2.2
298 rte_eth_timesync_read_time@DPDK_2.2 2.2
299 rte_eth_timesync_read_tx_timestamp@DPDK_2.2 2.2
300 rte_eth_timesync_write_time@DPDK_2.2 2.2
301 rte_eth_tx_queue_info_get@DPDK_2.2 2.2
302 rte_eth_tx_queue_setup@DPDK_2.2 2.2
303 rte_eth_xstats_get@DPDK_2.2 2.2
304 rte_eth_xstats_reset@DPDK_2.2 2.2
305 rte_exit@DPDK_2.0 2.2
306 rte_fbk_hash_create@DPDK_2.0 2.2
307 rte_fbk_hash_find_existing@DPDK_2.0 2.2
308 rte_fbk_hash_free@DPDK_2.0 2.2
309 rte_free@DPDK_2.0 2.2
310 rte_get_rx_ol_flag_name@DPDK_2.0 2.2
311 rte_get_tsc_hz@DPDK_2.0 2.2
312 rte_get_tx_ol_flag_name@DPDK_2.0 2.2
313 rte_hash_add_key@DPDK_2.0 2.2
314 rte_hash_add_key_data@DPDK_2.1 2.2
315 rte_hash_add_key_with_hash@DPDK_2.0 2.2
316 rte_hash_add_key_with_hash_data@DPDK_2.1 2.2
317 rte_hash_create@DPDK_2.0 2.2
318 rte_hash_del_key@DPDK_2.0 2.2
319 rte_hash_del_key_with_hash@DPDK_2.0 2.2
320 rte_hash_find_existing@DPDK_2.0 2.2
321 rte_hash_free@DPDK_2.0 2.2
322 rte_hash_hash@DPDK_2.0 2.2
323 rte_hash_iterate@DPDK_2.1 2.2
324 rte_hash_lookup@DPDK_2.0 2.2
325 rte_hash_lookup_bulk@DPDK_2.0 2.2
326 rte_hash_lookup_bulk_data@DPDK_2.1 2.2
327 rte_hash_lookup_data@DPDK_2.1 2.2
328 rte_hash_lookup_with_hash@DPDK_2.0 2.2
329 rte_hash_lookup_with_hash_data@DPDK_2.1 2.2
330 rte_hash_reset@DPDK_2.1 2.2
331 rte_hash_set_cmp_func@DPDK_2.2 2.2
332 rte_hexdump@DPDK_2.0 2.2
333 rte_intr_allow_others@DPDK_2.1 2.2
334 rte_intr_callback_register@DPDK_2.0 2.2
335 rte_intr_callback_unregister@DPDK_2.0 2.2
336 rte_intr_cap_multiple@DPDK_2.2 2.2
337 rte_intr_disable@DPDK_2.0 2.2
338 rte_intr_dp_is_en@DPDK_2.1 2.2
339 rte_intr_efd_disable@DPDK_2.1 2.2
340 rte_intr_efd_enable@DPDK_2.1 2.2
341 rte_intr_enable@DPDK_2.0 2.2
342 rte_intr_rx_ctl@DPDK_2.1 2.2
343 rte_intr_tls_epfd@DPDK_2.1 2.2
344 rte_ip_frag_free_death_row@DPDK_2.0 2.2
345 rte_ip_frag_table_create@DPDK_2.0 2.2
346 rte_ip_frag_table_statistics_dump@DPDK_2.0 2.2
347 rte_ipv4_frag_reassemble_packet@DPDK_2.0 2.2
348 rte_ipv4_fragment_packet@DPDK_2.0 2.2
349 rte_ipv6_frag_reassemble_packet@DPDK_2.0 2.2
350 rte_ipv6_fragment_packet@DPDK_2.0 2.2
351 rte_jobstats_context_finish@DPDK_2.0 2.2
352 rte_jobstats_context_init@DPDK_2.0 2.2
353 rte_jobstats_context_reset@DPDK_2.0 2.2
354 rte_jobstats_context_start@DPDK_2.0 2.2
355 rte_jobstats_finish@DPDK_2.0 2.2
356 rte_jobstats_init@DPDK_2.0 2.2
357 rte_jobstats_reset@DPDK_2.0 2.2
358 rte_jobstats_set_max@DPDK_2.0 2.2
359 rte_jobstats_set_min@DPDK_2.0 2.2
360 rte_jobstats_set_period@DPDK_2.0 2.2
361 rte_jobstats_set_target@DPDK_2.0 2.2
362 rte_jobstats_set_update_period_function@DPDK_2.0 2.2
363 rte_jobstats_start@DPDK_2.0 2.2
364 rte_keepalive_create@DPDK_2.2 2.2
365 rte_keepalive_dispatch_pings@DPDK_2.2 2.2
366 rte_keepalive_register_core@DPDK_2.2 2.2
367 rte_kni_alloc@DPDK_2.0 2.2
368 rte_kni_close@DPDK_2.0 2.2
369 rte_kni_get@DPDK_2.0 2.2
370 rte_kni_get_name@DPDK_2.0 2.2
371 rte_kni_handle_request@DPDK_2.0 2.2
372 rte_kni_init@DPDK_2.0 2.2
373 rte_kni_register_handlers@DPDK_2.0 2.2
374 rte_kni_release@DPDK_2.0 2.2
375 rte_kni_rx_burst@DPDK_2.0 2.2
376 rte_kni_tx_burst@DPDK_2.0 2.2
377 rte_kni_unregister_handlers@DPDK_2.0 2.2
378 rte_kvargs_count@DPDK_2.0 2.2
379 rte_kvargs_free@DPDK_2.0 2.2
380 rte_kvargs_parse@DPDK_2.0 2.2
381 rte_kvargs_process@DPDK_2.0 2.2
382 rte_log@DPDK_2.0 2.2
383 rte_log_add_in_history@DPDK_2.0 2.2
384 rte_log_cur_msg_loglevel@DPDK_2.0 2.2
385 rte_log_cur_msg_logtype@DPDK_2.0 2.2
386 rte_log_dump_history@DPDK_2.0 2.2
387 rte_log_set_history@DPDK_2.0 2.2
388 rte_logs@DPDK_2.0 2.2
389 rte_lpm6_add@DPDK_2.0 2.2
390 rte_lpm6_create@DPDK_2.0 2.2
391 rte_lpm6_delete@DPDK_2.0 2.2
392 rte_lpm6_delete_all@DPDK_2.0 2.2
393 rte_lpm6_delete_bulk_func@DPDK_2.0 2.2
394 rte_lpm6_find_existing@DPDK_2.0 2.2
395 rte_lpm6_free@DPDK_2.0 2.2
396 rte_lpm6_is_rule_present@DPDK_2.0 2.2
397 rte_lpm6_lookup@DPDK_2.0 2.2
398 rte_lpm6_lookup_bulk_func@DPDK_2.0 2.2
399 rte_lpm_add@DPDK_2.0 2.2
400 rte_lpm_create@DPDK_2.0 2.2
401 rte_lpm_delete@DPDK_2.0 2.2
402 rte_lpm_delete_all@DPDK_2.0 2.2
403 rte_lpm_find_existing@DPDK_2.0 2.2
404 rte_lpm_free@DPDK_2.0 2.2
405 rte_lpm_is_rule_present@DPDK_2.0 2.2
406 rte_malloc@DPDK_2.0 2.2
407 rte_malloc_dump_stats@DPDK_2.0 2.2
408 rte_malloc_get_socket_stats@DPDK_2.0 2.2
409 rte_malloc_set_limit@DPDK_2.0 2.2
410 rte_malloc_socket@DPDK_2.0 2.2
411 rte_malloc_validate@DPDK_2.0 2.2
412 rte_malloc_virt2phy@DPDK_2.0 2.2
413 rte_mbuf_sanity_check@DPDK_2.0 2.2
414 rte_mem_lock_page@DPDK_2.0 2.2
415 rte_mem_virt2phy@DPDK_2.0 2.2
416 rte_memdump@DPDK_2.0 2.2
417 rte_memory_get_nchannel@DPDK_2.0 2.2
418 rte_memory_get_nrank@DPDK_2.0 2.2
419 rte_mempool_audit@DPDK_2.0 2.2
420 rte_mempool_calc_obj_size@DPDK_2.0 2.2
421 rte_mempool_count@DPDK_2.0 2.2
422 rte_mempool_create@DPDK_2.0 2.2
423 rte_mempool_dump@DPDK_2.0 2.2
424 rte_mempool_gntalloc_create@DPDK_2.0 2.2
425 rte_mempool_list_dump@DPDK_2.0 2.2
426 rte_mempool_lookup@DPDK_2.0 2.2
427 rte_mempool_obj_iter@DPDK_2.0 2.2
428 rte_mempool_walk@DPDK_2.0 2.2
429 rte_mempool_xmem_create@DPDK_2.0 2.2
430 rte_mempool_xmem_size@DPDK_2.0 2.2
431 rte_mempool_xmem_usage@DPDK_2.0 2.2
432 rte_memzone_dump@DPDK_2.0 2.2
433 rte_memzone_free@DPDK_2.1 2.2
434 rte_memzone_lookup@DPDK_2.0 2.2
435 rte_memzone_reserve@DPDK_2.0 2.2
436 rte_memzone_reserve_aligned@DPDK_2.0 2.2
437 rte_memzone_reserve_bounded@DPDK_2.0 2.2
438 rte_memzone_walk@DPDK_2.0 2.2
439 rte_meter_srtcm_config@DPDK_2.0 2.2
440 rte_meter_trtcm_config@DPDK_2.0 2.2
441 rte_openlog_stream@DPDK_2.0 2.2
442 rte_pipeline_check@DPDK_2.0 2.2
443 rte_pipeline_create@DPDK_2.0 2.2
444 rte_pipeline_flush@DPDK_2.0 2.2
445 rte_pipeline_free@DPDK_2.0 2.2
446 rte_pipeline_port_in_connect_to_table@DPDK_2.0 2.2
447 rte_pipeline_port_in_create@DPDK_2.0 2.2
448 rte_pipeline_port_in_disable@DPDK_2.0 2.2
449 rte_pipeline_port_in_enable@DPDK_2.0 2.2
450 rte_pipeline_port_in_stats_read@DPDK_2.1 2.2
451 rte_pipeline_port_out_create@DPDK_2.0 2.2
452 rte_pipeline_port_out_packet_insert@DPDK_2.0 2.2
453 rte_pipeline_port_out_stats_read@DPDK_2.1 2.2
454 rte_pipeline_run@DPDK_2.0 2.2
455 rte_pipeline_table_create@DPDK_2.0 2.2
456 rte_pipeline_table_default_entry_add@DPDK_2.0 2.2
457 rte_pipeline_table_default_entry_delete@DPDK_2.0 2.2
458 rte_pipeline_table_entry_add@DPDK_2.0 2.2
459 rte_pipeline_table_entry_add_bulk@DPDK_2.2 2.2
460 rte_pipeline_table_entry_delete@DPDK_2.0 2.2
461 rte_pipeline_table_entry_delete_bulk@DPDK_2.2 2.2
462 rte_pipeline_table_stats_read@DPDK_2.1 2.2
463 rte_pktmbuf_dump@DPDK_2.0 2.2
464 rte_pktmbuf_init@DPDK_2.0 2.2
465 rte_pktmbuf_offload_pool_create@DPDK_2.2 2.2
466 rte_pktmbuf_pool_create@DPDK_2.1 2.2
467 rte_pktmbuf_pool_init@DPDK_2.0 2.2
468 rte_pmd_af_packet_devinit@DPDK_2.0 2.2
469 rte_port_ethdev_reader_ops@DPDK_2.0 2.2
470 rte_port_ethdev_writer_nodrop_ops@DPDK_2.1 2.2
471 rte_port_ethdev_writer_ops@DPDK_2.0 2.2
472 rte_port_ring_multi_reader_ops@DPDK_2.2 2.2
473 rte_port_ring_multi_writer_nodrop_ops@DPDK_2.2 2.2
474 rte_port_ring_multi_writer_ops@DPDK_2.2 2.2
475 rte_port_ring_reader_ipv4_frag_ops@DPDK_2.0 2.2
476 rte_port_ring_reader_ipv6_frag_ops@DPDK_2.1 2.2
477 rte_port_ring_reader_ops@DPDK_2.0 2.2
478 rte_port_ring_writer_ipv4_ras_ops@DPDK_2.0 2.2
479 rte_port_ring_writer_ipv6_ras_ops@DPDK_2.1 2.2
480 rte_port_ring_writer_nodrop_ops@DPDK_2.1 2.2
481 rte_port_ring_writer_ops@DPDK_2.0 2.2
482 rte_port_sched_reader_ops@DPDK_2.0 2.2
483 rte_port_sched_writer_ops@DPDK_2.0 2.2
484 rte_port_sink_ops@DPDK_2.0 2.2
485 rte_port_source_ops@DPDK_2.0 2.2
486 rte_power_exit@DPDK_2.0 2.2
487 rte_power_freq_down@DPDK_2.0 2.2
488 rte_power_freq_max@DPDK_2.0 2.2
489 rte_power_freq_min@DPDK_2.0 2.2
490 rte_power_freq_up@DPDK_2.0 2.2
491 rte_power_freqs@DPDK_2.0 2.2
492 rte_power_get_env@DPDK_2.0 2.2
493 rte_power_get_freq@DPDK_2.0 2.2
494 rte_power_init@DPDK_2.0 2.2
495 rte_power_set_env@DPDK_2.0 2.2
496 rte_power_set_freq@DPDK_2.0 2.2
497 rte_power_unset_env@DPDK_2.0 2.2
498 rte_realloc@DPDK_2.0 2.2
499 rte_red_config_init@DPDK_2.0 2.2
500 rte_red_log2_1_minus_Wq@DPDK_2.0 2.2
501 rte_red_pow2_frac_inv@DPDK_2.0 2.2
502 rte_red_rand_seed@DPDK_2.0 2.2
503 rte_red_rand_val@DPDK_2.0 2.2
504 rte_red_rt_data_init@DPDK_2.0 2.2
505 rte_reorder_create@DPDK_2.0 2.2
506 rte_reorder_drain@DPDK_2.0 2.2
507 rte_reorder_find_existing@DPDK_2.0 2.2
508 rte_reorder_free@DPDK_2.0 2.2
509 rte_reorder_init@DPDK_2.0 2.2
510 rte_reorder_insert@DPDK_2.0 2.2
511 rte_reorder_reset@DPDK_2.0 2.2
512 rte_ring_create@DPDK_2.0 2.2
513 rte_ring_dump@DPDK_2.0 2.2
514 rte_ring_free@DPDK_2.2 2.2
515 rte_ring_get_memsize@DPDK_2.0 2.2
516 rte_ring_init@DPDK_2.0 2.2
517 rte_ring_list_dump@DPDK_2.0 2.2
518 rte_ring_lookup@DPDK_2.0 2.2
519 rte_ring_set_water_mark@DPDK_2.0 2.2
520 rte_sched_pipe_config@DPDK_2.0 2.2
521 rte_sched_port_config@DPDK_2.0 2.2
522 rte_sched_port_dequeue@DPDK_2.0 2.2
523 rte_sched_port_enqueue@DPDK_2.0 2.2
524 rte_sched_port_free@DPDK_2.0 2.2
525 rte_sched_port_get_memory_footprint@DPDK_2.0 2.2
526 rte_sched_port_pkt_read_color@DPDK_2.1 2.2
527 rte_sched_port_pkt_read_tree_path@DPDK_2.1 2.2
528 rte_sched_port_pkt_write@DPDK_2.1 2.2
529 rte_sched_queue_read_stats@DPDK_2.0 2.2
530 rte_sched_subport_config@DPDK_2.0 2.2
531 rte_sched_subport_read_stats@DPDK_2.0 2.2
532 rte_set_application_usage_hook@DPDK_2.0 2.2
533 rte_set_log_level@DPDK_2.0 2.2
534 rte_set_log_type@DPDK_2.0 2.2
535 rte_socket_id@DPDK_2.0 2.2
536 rte_strerror@DPDK_2.0 2.2
537 rte_strsplit@DPDK_2.0 2.2
538 rte_sys_gettid@DPDK_2.0 2.2
539 rte_table_acl_ops@DPDK_2.0 2.2
540 rte_table_array_ops@DPDK_2.0 2.2
541 rte_table_hash_ext_ops@DPDK_2.0 2.2
542 rte_table_hash_key16_ext_dosig_ops@DPDK_2.2 2.2
543 rte_table_hash_key16_ext_ops@DPDK_2.0 2.2
544 rte_table_hash_key16_lru_ops@DPDK_2.0 2.2
545 rte_table_hash_key32_ext_ops@DPDK_2.0 2.2
546 rte_table_hash_key32_lru_ops@DPDK_2.0 2.2
547 rte_table_hash_key8_ext_dosig_ops@DPDK_2.0 2.2
548 rte_table_hash_key8_ext_ops@DPDK_2.0 2.2
549 rte_table_hash_key8_lru_dosig_ops@DPDK_2.0 2.2
550 rte_table_hash_key8_lru_ops@DPDK_2.0 2.2
551 rte_table_hash_lru_ops@DPDK_2.0 2.2
552 rte_table_lpm_ipv6_ops@DPDK_2.0 2.2
553 rte_table_lpm_ops@DPDK_2.0 2.2
554 rte_table_stub_ops@DPDK_2.0 2.2
555 rte_thread_get_affinity@DPDK_2.0 2.2
556 rte_thread_set_affinity@DPDK_2.0 2.2
557 rte_timer_dump_stats@DPDK_2.0 2.2
558 rte_timer_init@DPDK_2.0 2.2
559 rte_timer_manage@DPDK_2.0 2.2
560 rte_timer_pending@DPDK_2.0 2.2
561 rte_timer_reset@DPDK_2.0 2.2
562 rte_timer_reset_sync@DPDK_2.0 2.2
563 rte_timer_stop@DPDK_2.0 2.2
564 rte_timer_stop_sync@DPDK_2.0 2.2
565 rte_timer_subsystem_init@DPDK_2.0 2.2
566 rte_vhost_dequeue_burst@DPDK_2.0 2.2
567 rte_vhost_driver_callback_register@DPDK_2.0 2.2
568 rte_vhost_driver_register@DPDK_2.0 2.2
569 rte_vhost_driver_session_start@DPDK_2.0 2.2
570 rte_vhost_driver_unregister@DPDK_2.1 2.2
571 rte_vhost_enable_guest_notification@DPDK_2.0 2.2
572 rte_vhost_enqueue_burst@DPDK_2.0 2.2
573 rte_vhost_feature_disable@DPDK_2.0 2.2
574 rte_vhost_feature_enable@DPDK_2.0 2.2
575 rte_vhost_feature_get@DPDK_2.0 2.2
576 rte_vlog@DPDK_2.0 2.2
577 rte_zmalloc@DPDK_2.0 2.2
578 rte_zmalloc_socket@DPDK_2.0 2.2
579 vt100_init@DPDK_2.0 2.2
580 vt100_parser@DPDK_2.0 2.2
diff --git a/ovs_build/dpdk_16.07/debian/libdpdk0.symbols.i386 b/ovs_build/dpdk_16.07/debian/libdpdk0.symbols.i386
deleted file mode 100644
index 7d450aa..0000000
--- a/ovs_build/dpdk_16.07/debian/libdpdk0.symbols.i386
+++ /dev/null
@@ -1,569 +0,0 @@
1libdpdk.so.0 libdpdk0 #MINVER#
2* Build-Depends-Package: libdpdk-dev
3 DPDK_2.0@DPDK_2.0 2.2
4 DPDK_2.1@DPDK_2.1 2.2
5 DPDK_2.2@DPDK_2.2 2.2
6 __rte_panic@DPDK_2.0 2.2
7 _rte_eth_dev_callback_process@DPDK_2.2 2.2
8 cirbuf_add_buf_head@DPDK_2.0 2.2
9 cirbuf_add_buf_tail@DPDK_2.0 2.2
10 cirbuf_add_head@DPDK_2.0 2.2
11 cirbuf_add_head_safe@DPDK_2.0 2.2
12 cirbuf_add_tail@DPDK_2.0 2.2
13 cirbuf_add_tail_safe@DPDK_2.0 2.2
14 cirbuf_align_left@DPDK_2.0 2.2
15 cirbuf_align_right@DPDK_2.0 2.2
16 cirbuf_del_buf_head@DPDK_2.0 2.2
17 cirbuf_del_buf_tail@DPDK_2.0 2.2
18 cirbuf_del_head@DPDK_2.0 2.2
19 cirbuf_del_head_safe@DPDK_2.0 2.2
20 cirbuf_del_tail@DPDK_2.0 2.2
21 cirbuf_del_tail_safe@DPDK_2.0 2.2
22 cirbuf_get_buf_head@DPDK_2.0 2.2
23 cirbuf_get_buf_tail@DPDK_2.0 2.2
24 cirbuf_get_head@DPDK_2.0 2.2
25 cirbuf_get_tail@DPDK_2.0 2.2
26 cirbuf_init@DPDK_2.0 2.2
27 cmdline_complete@DPDK_2.0 2.2
28 cmdline_complete_get_elt_string@DPDK_2.0 2.2
29 cmdline_complete_get_nb_string@DPDK_2.0 2.2
30 cmdline_file_new@DPDK_2.0 2.2
31 cmdline_free@DPDK_2.0 2.2
32 cmdline_get_help_etheraddr@DPDK_2.0 2.2
33 cmdline_get_help_ipaddr@DPDK_2.0 2.2
34 cmdline_get_help_num@DPDK_2.0 2.2
35 cmdline_get_help_portlist@DPDK_2.0 2.2
36 cmdline_get_help_string@DPDK_2.0 2.2
37 cmdline_in@DPDK_2.0 2.2
38 cmdline_interact@DPDK_2.0 2.2
39 cmdline_isendoftoken@DPDK_2.0 2.2
40 cmdline_new@DPDK_2.0 2.2
41 cmdline_parse@DPDK_2.0 2.2
42 cmdline_parse_etheraddr@DPDK_2.0 2.2
43 cmdline_parse_ipaddr@DPDK_2.0 2.2
44 cmdline_parse_num@DPDK_2.0 2.2
45 cmdline_parse_portlist@DPDK_2.0 2.2
46 cmdline_parse_string@DPDK_2.0 2.2
47 cmdline_poll@DPDK_2.1 2.2
48 cmdline_printf@DPDK_2.0 2.2
49 cmdline_quit@DPDK_2.0 2.2
50 cmdline_set_prompt@DPDK_2.0 2.2
51 cmdline_stdin_exit@DPDK_2.0 2.2
52 cmdline_stdin_new@DPDK_2.0 2.2
53 cmdline_token_etheraddr_ops@DPDK_2.0 2.2
54 cmdline_token_ipaddr_ops@DPDK_2.0 2.2
55 cmdline_token_num_ops@DPDK_2.0 2.2
56 cmdline_token_portlist_ops@DPDK_2.0 2.2
57 cmdline_token_string_ops@DPDK_2.0 2.2
58 cmdline_write_char@DPDK_2.0 2.2
59 devargs_list@DPDK_2.0 2.2
60 eal_parse_sysfs_value@DPDK_2.0 2.2
61 eal_timer_source@DPDK_2.0 2.2
62 eth_dev_null_create@DPDK_2.2 2.2
63 lcore_config@DPDK_2.0 2.2
64 pci_device_list@DPDK_2.0 2.2
65 pci_driver_list@DPDK_2.0 2.2
66 per_lcore__lcore_id@DPDK_2.0 2.2
67 per_lcore__rte_errno@DPDK_2.0 2.2
68 rdline_add_history@DPDK_2.0 2.2
69 rdline_char_in@DPDK_2.0 2.2
70 rdline_clear_history@DPDK_2.0 2.2
71 rdline_get_buffer@DPDK_2.0 2.2
72 rdline_get_history_item@DPDK_2.0 2.2
73 rdline_init@DPDK_2.0 2.2
74 rdline_newline@DPDK_2.0 2.2
75 rdline_quit@DPDK_2.0 2.2
76 rdline_redisplay@DPDK_2.0 2.2
77 rdline_reset@DPDK_2.0 2.2
78 rdline_restart@DPDK_2.0 2.2
79 rdline_stop@DPDK_2.0 2.2
80 rte_acl_add_rules@DPDK_2.0 2.2
81 rte_acl_build@DPDK_2.0 2.2
82 rte_acl_classify@DPDK_2.0 2.2
83 rte_acl_classify_alg@DPDK_2.0 2.2
84 rte_acl_classify_scalar@DPDK_2.0 2.2
85 rte_acl_create@DPDK_2.0 2.2
86 rte_acl_dump@DPDK_2.0 2.2
87 rte_acl_find_existing@DPDK_2.0 2.2
88 rte_acl_free@DPDK_2.0 2.2
89 rte_acl_list_dump@DPDK_2.0 2.2
90 rte_acl_reset@DPDK_2.0 2.2
91 rte_acl_reset_rules@DPDK_2.0 2.2
92 rte_acl_set_ctx_classify@DPDK_2.0 2.2
93 rte_approx@DPDK_2.0 2.2
94 rte_calloc@DPDK_2.0 2.2
95 rte_calloc_socket@DPDK_2.0 2.2
96 rte_cfgfile_close@DPDK_2.0 2.2
97 rte_cfgfile_get_entry@DPDK_2.0 2.2
98 rte_cfgfile_has_entry@DPDK_2.0 2.2
99 rte_cfgfile_has_section@DPDK_2.0 2.2
100 rte_cfgfile_load@DPDK_2.0 2.2
101 rte_cfgfile_num_sections@DPDK_2.0 2.2
102 rte_cfgfile_section_entries@DPDK_2.0 2.2
103 rte_cfgfile_section_num_entries@DPDK_2.0 2.2
104 rte_cfgfile_sections@DPDK_2.0 2.2
105 rte_cpu_check_supported@DPDK_2.0 2.2
106 rte_cryptodev_callback_register@DPDK_2.2 2.2
107 rte_cryptodev_callback_unregister@DPDK_2.2 2.2
108 rte_cryptodev_close@DPDK_2.2 2.2
109 rte_cryptodev_configure@DPDK_2.2 2.2
110 rte_cryptodev_count@DPDK_2.2 2.2
111 rte_cryptodev_count_devtype@DPDK_2.2 2.2
112 rte_cryptodev_create_vdev@DPDK_2.2 2.2
113 rte_cryptodev_get_dev_id@DPDK_2.2 2.2
114 rte_cryptodev_info_get@DPDK_2.2 2.2
115 rte_cryptodev_pmd_allocate@DPDK_2.2 2.2
116 rte_cryptodev_pmd_callback_process@DPDK_2.2 2.2
117 rte_cryptodev_pmd_driver_register@DPDK_2.2 2.2
118 rte_cryptodev_pmd_release_device@DPDK_2.2 2.2
119 rte_cryptodev_pmd_virtual_dev_init@DPDK_2.2 2.2
120 rte_cryptodev_queue_pair_count@DPDK_2.2 2.2
121 rte_cryptodev_queue_pair_setup@DPDK_2.2 2.2
122 rte_cryptodev_queue_pair_start@DPDK_2.2 2.2
123 rte_cryptodev_queue_pair_stop@DPDK_2.2 2.2
124 rte_cryptodev_session_create@DPDK_2.2 2.2
125 rte_cryptodev_session_free@DPDK_2.2 2.2
126 rte_cryptodev_socket_id@DPDK_2.2 2.2
127 rte_cryptodev_start@DPDK_2.2 2.2
128 rte_cryptodev_stats_get@DPDK_2.2 2.2
129 rte_cryptodev_stats_reset@DPDK_2.2 2.2
130 rte_cryptodev_stop@DPDK_2.2 2.2
131 rte_cryptodevs@DPDK_2.2 2.2
132 rte_ctrlmbuf_init@DPDK_2.0 2.2
133 rte_cycles_vmware_tsc_map@DPDK_2.0 2.2
134 rte_delay_us@DPDK_2.0 2.2
135 rte_distributor_clear_returns@DPDK_2.0 2.2
136 rte_distributor_create@DPDK_2.0 2.2
137 rte_distributor_flush@DPDK_2.0 2.2
138 rte_distributor_get_pkt@DPDK_2.0 2.2
139 rte_distributor_poll_pkt@DPDK_2.0 2.2
140 rte_distributor_process@DPDK_2.0 2.2
141 rte_distributor_request_pkt@DPDK_2.0 2.2
142 rte_distributor_return_pkt@DPDK_2.0 2.2
143 rte_distributor_returned_pkts@DPDK_2.0 2.2
144 rte_dom0_mempool_create@DPDK_2.0 2.2
145 rte_dump_physmem_layout@DPDK_2.0 2.2
146 rte_dump_registers@DPDK_2.0 2.2
147 rte_dump_stack@DPDK_2.0 2.2
148 rte_dump_tailq@DPDK_2.0 2.2
149 rte_eal_alarm_cancel@DPDK_2.0 2.2
150 rte_eal_alarm_set@DPDK_2.0 2.2
151 rte_eal_dev_init@DPDK_2.0 2.2
152 rte_eal_devargs_add@DPDK_2.0 2.2
153 rte_eal_devargs_dump@DPDK_2.0 2.2
154 rte_eal_devargs_type_count@DPDK_2.0 2.2
155 rte_eal_driver_register@DPDK_2.0 2.2
156 rte_eal_driver_unregister@DPDK_2.0 2.2
157 rte_eal_get_configuration@DPDK_2.0 2.2
158 rte_eal_get_lcore_state@DPDK_2.0 2.2
159 rte_eal_get_physmem_layout@DPDK_2.0 2.2
160 rte_eal_get_physmem_size@DPDK_2.0 2.2
161 rte_eal_has_hugepages@DPDK_2.0 2.2
162 rte_eal_init@DPDK_2.0 2.2
163 rte_eal_iopl_init@DPDK_2.0 2.2
164 rte_eal_lcore_role@DPDK_2.0 2.2
165 rte_eal_mp_remote_launch@DPDK_2.0 2.2
166 rte_eal_mp_wait_lcore@DPDK_2.0 2.2
167 rte_eal_parse_devargs_str@DPDK_2.0 2.2
168 rte_eal_pci_detach@DPDK_2.1 2.2
169 rte_eal_pci_dump@DPDK_2.0 2.2
170 rte_eal_pci_probe@DPDK_2.0 2.2
171 rte_eal_pci_probe_one@DPDK_2.0 2.2
172 rte_eal_pci_read_config@DPDK_2.1 2.2
173 rte_eal_pci_register@DPDK_2.0 2.2
174 rte_eal_pci_scan@DPDK_2.0 2.2
175 rte_eal_pci_unregister@DPDK_2.0 2.2
176 rte_eal_pci_write_config@DPDK_2.1 2.2
177 rte_eal_process_type@DPDK_2.0 2.2
178 rte_eal_remote_launch@DPDK_2.0 2.2
179 rte_eal_tailq_lookup@DPDK_2.0 2.2
180 rte_eal_tailq_register@DPDK_2.0 2.2
181 rte_eal_vdev_init@DPDK_2.0 2.2
182 rte_eal_vdev_uninit@DPDK_2.0 2.2
183 rte_eal_wait_lcore@DPDK_2.0 2.2
184 rte_epoll_ctl@DPDK_2.1 2.2
185 rte_epoll_wait@DPDK_2.1 2.2
186 rte_eth_add_rx_callback@DPDK_2.2 2.2
187 rte_eth_add_tx_callback@DPDK_2.2 2.2
188 rte_eth_allmulticast_disable@DPDK_2.2 2.2
189 rte_eth_allmulticast_enable@DPDK_2.2 2.2
190 rte_eth_allmulticast_get@DPDK_2.2 2.2
191 rte_eth_bond_8023ad_conf_get@DPDK_2.0 2.2
192 rte_eth_bond_8023ad_setup@DPDK_2.0 2.2
193 rte_eth_bond_active_slaves_get@DPDK_2.0 2.2
194 rte_eth_bond_create@DPDK_2.0 2.2
195 rte_eth_bond_free@DPDK_2.1 2.2
196 rte_eth_bond_link_monitoring_set@DPDK_2.0 2.2
197 rte_eth_bond_mac_address_reset@DPDK_2.0 2.2
198 rte_eth_bond_mac_address_set@DPDK_2.0 2.2
199 rte_eth_bond_mode_get@DPDK_2.0 2.2
200 rte_eth_bond_mode_set@DPDK_2.0 2.2
201 rte_eth_bond_primary_get@DPDK_2.0 2.2
202 rte_eth_bond_primary_set@DPDK_2.0 2.2
203 rte_eth_bond_slave_add@DPDK_2.0 2.2
204 rte_eth_bond_slave_remove@DPDK_2.0 2.2
205 rte_eth_bond_slaves_get@DPDK_2.0 2.2
206 rte_eth_bond_xmit_policy_get@DPDK_2.0 2.2
207 rte_eth_bond_xmit_policy_set@DPDK_2.0 2.2
208 rte_eth_copy_pci_info@DPDK_2.2 2.2
209 rte_eth_dev_allocate@DPDK_2.2 2.2
210 rte_eth_dev_allocated@DPDK_2.2 2.2
211 rte_eth_dev_attach@DPDK_2.2 2.2
212 rte_eth_dev_callback_register@DPDK_2.2 2.2
213 rte_eth_dev_callback_unregister@DPDK_2.2 2.2
214 rte_eth_dev_close@DPDK_2.2 2.2
215 rte_eth_dev_configure@DPDK_2.2 2.2
216 rte_eth_dev_count@DPDK_2.2 2.2
217 rte_eth_dev_default_mac_addr_set@DPDK_2.2 2.2
218 rte_eth_dev_detach@DPDK_2.2 2.2
219 rte_eth_dev_filter_ctrl@DPDK_2.2 2.2
220 rte_eth_dev_filter_supported@DPDK_2.2 2.2
221 rte_eth_dev_flow_ctrl_get@DPDK_2.2 2.2
222 rte_eth_dev_flow_ctrl_set@DPDK_2.2 2.2
223 rte_eth_dev_get_dcb_info@DPDK_2.2 2.2
224 rte_eth_dev_get_eeprom@DPDK_2.2 2.2
225 rte_eth_dev_get_eeprom_length@DPDK_2.2 2.2
226 rte_eth_dev_get_mtu@DPDK_2.2 2.2
227 rte_eth_dev_get_reg_info@DPDK_2.2 2.2
228 rte_eth_dev_get_reg_length@DPDK_2.2 2.2
229 rte_eth_dev_get_vlan_offload@DPDK_2.2 2.2
230 rte_eth_dev_info_get@DPDK_2.2 2.2
231 rte_eth_dev_is_valid_port@DPDK_2.2 2.2
232 rte_eth_dev_mac_addr_add@DPDK_2.2 2.2
233 rte_eth_dev_mac_addr_remove@DPDK_2.2 2.2
234 rte_eth_dev_priority_flow_ctrl_set@DPDK_2.2 2.2
235 rte_eth_dev_release_port@DPDK_2.2 2.2
236 rte_eth_dev_rss_hash_conf_get@DPDK_2.2 2.2
237 rte_eth_dev_rss_hash_update@DPDK_2.2 2.2
238 rte_eth_dev_rss_reta_query@DPDK_2.2 2.2
239 rte_eth_dev_rss_reta_update@DPDK_2.2 2.2
240 rte_eth_dev_rx_intr_ctl@DPDK_2.2 2.2
241 rte_eth_dev_rx_intr_ctl_q@DPDK_2.2 2.2
242 rte_eth_dev_rx_intr_disable@DPDK_2.2 2.2
243 rte_eth_dev_rx_intr_enable@DPDK_2.2 2.2
244 rte_eth_dev_rx_queue_start@DPDK_2.2 2.2
245 rte_eth_dev_rx_queue_stop@DPDK_2.2 2.2
246 rte_eth_dev_set_eeprom@DPDK_2.2 2.2
247 rte_eth_dev_set_link_down@DPDK_2.2 2.2
248 rte_eth_dev_set_link_up@DPDK_2.2 2.2
249 rte_eth_dev_set_mc_addr_list@DPDK_2.2 2.2
250 rte_eth_dev_set_mtu@DPDK_2.2 2.2
251 rte_eth_dev_set_rx_queue_stats_mapping@DPDK_2.2 2.2
252 rte_eth_dev_set_tx_queue_stats_mapping@DPDK_2.2 2.2
253 rte_eth_dev_set_vf_rx@DPDK_2.2 2.2
254 rte_eth_dev_set_vf_rxmode@DPDK_2.2 2.2
255 rte_eth_dev_set_vf_tx@DPDK_2.2 2.2
256 rte_eth_dev_set_vf_vlan_filter@DPDK_2.2 2.2
257 rte_eth_dev_set_vlan_ether_type@DPDK_2.2 2.2
258 rte_eth_dev_set_vlan_offload@DPDK_2.2 2.2
259 rte_eth_dev_set_vlan_pvid@DPDK_2.2 2.2
260 rte_eth_dev_set_vlan_strip_on_queue@DPDK_2.2 2.2
261 rte_eth_dev_socket_id@DPDK_2.2 2.2
262 rte_eth_dev_start@DPDK_2.2 2.2
263 rte_eth_dev_stop@DPDK_2.2 2.2
264 rte_eth_dev_tx_queue_start@DPDK_2.2 2.2
265 rte_eth_dev_tx_queue_stop@DPDK_2.2 2.2
266 rte_eth_dev_uc_all_hash_table_set@DPDK_2.2 2.2
267 rte_eth_dev_uc_hash_table_set@DPDK_2.2 2.2
268 rte_eth_dev_udp_tunnel_add@DPDK_2.2 2.2
269 rte_eth_dev_udp_tunnel_delete@DPDK_2.2 2.2
270 rte_eth_dev_vlan_filter@DPDK_2.2 2.2
271 rte_eth_devices@DPDK_2.2 2.2
272 rte_eth_dma_zone_reserve@DPDK_2.2 2.2
273 rte_eth_driver_register@DPDK_2.2 2.2
274 rte_eth_from_ring@DPDK_2.2 2.2
275 rte_eth_from_rings@DPDK_2.0 2.2
276 rte_eth_led_off@DPDK_2.2 2.2
277 rte_eth_led_on@DPDK_2.2 2.2
278 rte_eth_link_get@DPDK_2.2 2.2
279 rte_eth_link_get_nowait@DPDK_2.2 2.2
280 rte_eth_macaddr_get@DPDK_2.2 2.2
281 rte_eth_mirror_rule_reset@DPDK_2.2 2.2
282 rte_eth_mirror_rule_set@DPDK_2.2 2.2
283 rte_eth_promiscuous_disable@DPDK_2.2 2.2
284 rte_eth_promiscuous_enable@DPDK_2.2 2.2
285 rte_eth_promiscuous_get@DPDK_2.2 2.2
286 rte_eth_remove_rx_callback@DPDK_2.2 2.2
287 rte_eth_remove_tx_callback@DPDK_2.2 2.2
288 rte_eth_rx_queue_info_get@DPDK_2.2 2.2
289 rte_eth_rx_queue_setup@DPDK_2.2 2.2
290 rte_eth_set_queue_rate_limit@DPDK_2.2 2.2
291 rte_eth_set_vf_rate_limit@DPDK_2.2 2.2
292 rte_eth_stats_get@DPDK_2.2 2.2
293 rte_eth_stats_reset@DPDK_2.2 2.2
294 rte_eth_timesync_adjust_time@DPDK_2.2 2.2
295 rte_eth_timesync_disable@DPDK_2.2 2.2
296 rte_eth_timesync_enable@DPDK_2.2 2.2
297 rte_eth_timesync_read_rx_timestamp@DPDK_2.2 2.2
298 rte_eth_timesync_read_time@DPDK_2.2 2.2
299 rte_eth_timesync_read_tx_timestamp@DPDK_2.2 2.2
300 rte_eth_timesync_write_time@DPDK_2.2 2.2
301 rte_eth_tx_queue_info_get@DPDK_2.2 2.2
302 rte_eth_tx_queue_setup@DPDK_2.2 2.2
303 rte_eth_xstats_get@DPDK_2.2 2.2
304 rte_eth_xstats_reset@DPDK_2.2 2.2
305 rte_exit@DPDK_2.0 2.2
306 rte_fbk_hash_create@DPDK_2.0 2.2
307 rte_fbk_hash_find_existing@DPDK_2.0 2.2
308 rte_fbk_hash_free@DPDK_2.0 2.2
309 rte_free@DPDK_2.0 2.2
310 rte_get_rx_ol_flag_name@DPDK_2.0 2.2
311 rte_get_tsc_hz@DPDK_2.0 2.2
312 rte_get_tx_ol_flag_name@DPDK_2.0 2.2
313 rte_hash_add_key@DPDK_2.0 2.2
314 rte_hash_add_key_data@DPDK_2.1 2.2
315 rte_hash_add_key_with_hash@DPDK_2.0 2.2
316 rte_hash_add_key_with_hash_data@DPDK_2.1 2.2
317 rte_hash_create@DPDK_2.0 2.2
318 rte_hash_del_key@DPDK_2.0 2.2
319 rte_hash_del_key_with_hash@DPDK_2.0 2.2
320 rte_hash_find_existing@DPDK_2.0 2.2
321 rte_hash_free@DPDK_2.0 2.2
322 rte_hash_hash@DPDK_2.0 2.2
323 rte_hash_iterate@DPDK_2.1 2.2
324 rte_hash_lookup@DPDK_2.0 2.2
325 rte_hash_lookup_bulk@DPDK_2.0 2.2
326 rte_hash_lookup_bulk_data@DPDK_2.1 2.2
327 rte_hash_lookup_data@DPDK_2.1 2.2
328 rte_hash_lookup_with_hash@DPDK_2.0 2.2
329 rte_hash_lookup_with_hash_data@DPDK_2.1 2.2
330 rte_hash_reset@DPDK_2.1 2.2
331 rte_hash_set_cmp_func@DPDK_2.2 2.2
332 rte_hexdump@DPDK_2.0 2.2
333 rte_intr_allow_others@DPDK_2.1 2.2
334 rte_intr_callback_register@DPDK_2.0 2.2
335 rte_intr_callback_unregister@DPDK_2.0 2.2
336 rte_intr_cap_multiple@DPDK_2.2 2.2
337 rte_intr_disable@DPDK_2.0 2.2
338 rte_intr_dp_is_en@DPDK_2.1 2.2
339 rte_intr_efd_disable@DPDK_2.1 2.2
340 rte_intr_efd_enable@DPDK_2.1 2.2
341 rte_intr_enable@DPDK_2.0 2.2
342 rte_intr_rx_ctl@DPDK_2.1 2.2
343 rte_intr_tls_epfd@DPDK_2.1 2.2
344 rte_ip_frag_free_death_row@DPDK_2.0 2.2
345 rte_ip_frag_table_create@DPDK_2.0 2.2
346 rte_ip_frag_table_statistics_dump@DPDK_2.0 2.2
347 rte_ipv4_frag_reassemble_packet@DPDK_2.0 2.2
348 rte_ipv4_fragment_packet@DPDK_2.0 2.2
349 rte_ipv6_frag_reassemble_packet@DPDK_2.0 2.2
350 rte_ipv6_fragment_packet@DPDK_2.0 2.2
351 rte_jobstats_context_finish@DPDK_2.0 2.2
352 rte_jobstats_context_init@DPDK_2.0 2.2
353 rte_jobstats_context_reset@DPDK_2.0 2.2
354 rte_jobstats_context_start@DPDK_2.0 2.2
355 rte_jobstats_finish@DPDK_2.0 2.2
356 rte_jobstats_init@DPDK_2.0 2.2
357 rte_jobstats_reset@DPDK_2.0 2.2
358 rte_jobstats_set_max@DPDK_2.0 2.2
359 rte_jobstats_set_min@DPDK_2.0 2.2
360 rte_jobstats_set_period@DPDK_2.0 2.2
361 rte_jobstats_set_target@DPDK_2.0 2.2
362 rte_jobstats_set_update_period_function@DPDK_2.0 2.2
363 rte_jobstats_start@DPDK_2.0 2.2
364 rte_keepalive_create@DPDK_2.2 2.2
365 rte_keepalive_dispatch_pings@DPDK_2.2 2.2
366 rte_keepalive_register_core@DPDK_2.2 2.2
367 rte_kvargs_count@DPDK_2.0 2.2
368 rte_kvargs_free@DPDK_2.0 2.2
369 rte_kvargs_parse@DPDK_2.0 2.2
370 rte_kvargs_process@DPDK_2.0 2.2
371 rte_log@DPDK_2.0 2.2
372 rte_log_add_in_history@DPDK_2.0 2.2
373 rte_log_cur_msg_loglevel@DPDK_2.0 2.2
374 rte_log_cur_msg_logtype@DPDK_2.0 2.2
375 rte_log_dump_history@DPDK_2.0 2.2
376 rte_log_set_history@DPDK_2.0 2.2
377 rte_logs@DPDK_2.0 2.2
378 rte_lpm6_add@DPDK_2.0 2.2
379 rte_lpm6_create@DPDK_2.0 2.2
380 rte_lpm6_delete@DPDK_2.0 2.2
381 rte_lpm6_delete_all@DPDK_2.0 2.2
382 rte_lpm6_delete_bulk_func@DPDK_2.0 2.2
383 rte_lpm6_find_existing@DPDK_2.0 2.2
384 rte_lpm6_free@DPDK_2.0 2.2
385 rte_lpm6_is_rule_present@DPDK_2.0 2.2
386 rte_lpm6_lookup@DPDK_2.0 2.2
387 rte_lpm6_lookup_bulk_func@DPDK_2.0 2.2
388 rte_lpm_add@DPDK_2.0 2.2
389 rte_lpm_create@DPDK_2.0 2.2
390 rte_lpm_delete@DPDK_2.0 2.2
391 rte_lpm_delete_all@DPDK_2.0 2.2
392 rte_lpm_find_existing@DPDK_2.0 2.2
393 rte_lpm_free@DPDK_2.0 2.2
394 rte_lpm_is_rule_present@DPDK_2.0 2.2
395 rte_malloc@DPDK_2.0 2.2
396 rte_malloc_dump_stats@DPDK_2.0 2.2
397 rte_malloc_get_socket_stats@DPDK_2.0 2.2
398 rte_malloc_set_limit@DPDK_2.0 2.2
399 rte_malloc_socket@DPDK_2.0 2.2
400 rte_malloc_validate@DPDK_2.0 2.2
401 rte_malloc_virt2phy@DPDK_2.0 2.2
402 rte_mbuf_sanity_check@DPDK_2.0 2.2
403 rte_mem_lock_page@DPDK_2.0 2.2
404 rte_mem_virt2phy@DPDK_2.0 2.2
405 rte_memdump@DPDK_2.0 2.2
406 rte_memory_get_nchannel@DPDK_2.0 2.2
407 rte_memory_get_nrank@DPDK_2.0 2.2
408 rte_mempool_audit@DPDK_2.0 2.2
409 rte_mempool_calc_obj_size@DPDK_2.0 2.2
410 rte_mempool_count@DPDK_2.0 2.2
411 rte_mempool_create@DPDK_2.0 2.2
412 rte_mempool_dump@DPDK_2.0 2.2
413 rte_mempool_gntalloc_create@DPDK_2.0 2.2
414 rte_mempool_list_dump@DPDK_2.0 2.2
415 rte_mempool_lookup@DPDK_2.0 2.2
416 rte_mempool_obj_iter@DPDK_2.0 2.2
417 rte_mempool_walk@DPDK_2.0 2.2
418 rte_mempool_xmem_create@DPDK_2.0 2.2
419 rte_mempool_xmem_size@DPDK_2.0 2.2
420 rte_mempool_xmem_usage@DPDK_2.0 2.2
421 rte_memzone_dump@DPDK_2.0 2.2
422 rte_memzone_free@DPDK_2.1 2.2
423 rte_memzone_lookup@DPDK_2.0 2.2
424 rte_memzone_reserve@DPDK_2.0 2.2
425 rte_memzone_reserve_aligned@DPDK_2.0 2.2
426 rte_memzone_reserve_bounded@DPDK_2.0 2.2
427 rte_memzone_walk@DPDK_2.0 2.2
428 rte_meter_srtcm_config@DPDK_2.0 2.2
429 rte_meter_trtcm_config@DPDK_2.0 2.2
430 rte_openlog_stream@DPDK_2.0 2.2
431 rte_pipeline_check@DPDK_2.0 2.2
432 rte_pipeline_create@DPDK_2.0 2.2
433 rte_pipeline_flush@DPDK_2.0 2.2
434 rte_pipeline_free@DPDK_2.0 2.2
435 rte_pipeline_port_in_connect_to_table@DPDK_2.0 2.2
436 rte_pipeline_port_in_create@DPDK_2.0 2.2
437 rte_pipeline_port_in_disable@DPDK_2.0 2.2
438 rte_pipeline_port_in_enable@DPDK_2.0 2.2
439 rte_pipeline_port_in_stats_read@DPDK_2.1 2.2
440 rte_pipeline_port_out_create@DPDK_2.0 2.2
441 rte_pipeline_port_out_packet_insert@DPDK_2.0 2.2
442 rte_pipeline_port_out_stats_read@DPDK_2.1 2.2
443 rte_pipeline_run@DPDK_2.0 2.2
444 rte_pipeline_table_create@DPDK_2.0 2.2
445 rte_pipeline_table_default_entry_add@DPDK_2.0 2.2
446 rte_pipeline_table_default_entry_delete@DPDK_2.0 2.2
447 rte_pipeline_table_entry_add@DPDK_2.0 2.2
448 rte_pipeline_table_entry_add_bulk@DPDK_2.2 2.2
449 rte_pipeline_table_entry_delete@DPDK_2.0 2.2
450 rte_pipeline_table_entry_delete_bulk@DPDK_2.2 2.2
451 rte_pipeline_table_stats_read@DPDK_2.1 2.2
452 rte_pktmbuf_dump@DPDK_2.0 2.2
453 rte_pktmbuf_init@DPDK_2.0 2.2
454 rte_pktmbuf_offload_pool_create@DPDK_2.2 2.2
455 rte_pktmbuf_pool_create@DPDK_2.1 2.2
456 rte_pktmbuf_pool_init@DPDK_2.0 2.2
457 rte_pmd_af_packet_devinit@DPDK_2.0 2.2
458 rte_port_ethdev_reader_ops@DPDK_2.0 2.2
459 rte_port_ethdev_writer_nodrop_ops@DPDK_2.1 2.2
460 rte_port_ethdev_writer_ops@DPDK_2.0 2.2
461 rte_port_ring_multi_reader_ops@DPDK_2.2 2.2
462 rte_port_ring_multi_writer_nodrop_ops@DPDK_2.2 2.2
463 rte_port_ring_multi_writer_ops@DPDK_2.2 2.2
464 rte_port_ring_reader_ipv4_frag_ops@DPDK_2.0 2.2
465 rte_port_ring_reader_ipv6_frag_ops@DPDK_2.1 2.2
466 rte_port_ring_reader_ops@DPDK_2.0 2.2
467 rte_port_ring_writer_ipv4_ras_ops@DPDK_2.0 2.2
468 rte_port_ring_writer_ipv6_ras_ops@DPDK_2.1 2.2
469 rte_port_ring_writer_nodrop_ops@DPDK_2.1 2.2
470 rte_port_ring_writer_ops@DPDK_2.0 2.2
471 rte_port_sched_reader_ops@DPDK_2.0 2.2
472 rte_port_sched_writer_ops@DPDK_2.0 2.2
473 rte_port_sink_ops@DPDK_2.0 2.2
474 rte_port_source_ops@DPDK_2.0 2.2
475 rte_power_exit@DPDK_2.0 2.2
476 rte_power_freq_down@DPDK_2.0 2.2
477 rte_power_freq_max@DPDK_2.0 2.2
478 rte_power_freq_min@DPDK_2.0 2.2
479 rte_power_freq_up@DPDK_2.0 2.2
480 rte_power_freqs@DPDK_2.0 2.2
481 rte_power_get_env@DPDK_2.0 2.2
482 rte_power_get_freq@DPDK_2.0 2.2
483 rte_power_init@DPDK_2.0 2.2
484 rte_power_set_env@DPDK_2.0 2.2
485 rte_power_set_freq@DPDK_2.0 2.2
486 rte_power_unset_env@DPDK_2.0 2.2
487 rte_realloc@DPDK_2.0 2.2
488 rte_red_config_init@DPDK_2.0 2.2
489 rte_red_log2_1_minus_Wq@DPDK_2.0 2.2
490 rte_red_pow2_frac_inv@DPDK_2.0 2.2
491 rte_red_rand_seed@DPDK_2.0 2.2
492 rte_red_rand_val@DPDK_2.0 2.2
493 rte_red_rt_data_init@DPDK_2.0 2.2
494 rte_reorder_create@DPDK_2.0 2.2
495 rte_reorder_drain@DPDK_2.0 2.2
496 rte_reorder_find_existing@DPDK_2.0 2.2
497 rte_reorder_free@DPDK_2.0 2.2
498 rte_reorder_init@DPDK_2.0 2.2
499 rte_reorder_insert@DPDK_2.0 2.2
500 rte_reorder_reset@DPDK_2.0 2.2
501 rte_ring_create@DPDK_2.0 2.2
502 rte_ring_dump@DPDK_2.0 2.2
503 rte_ring_free@DPDK_2.2 2.2
504 rte_ring_get_memsize@DPDK_2.0 2.2
505 rte_ring_init@DPDK_2.0 2.2
506 rte_ring_list_dump@DPDK_2.0 2.2
507 rte_ring_lookup@DPDK_2.0 2.2
508 rte_ring_set_water_mark@DPDK_2.0 2.2
509 rte_sched_pipe_config@DPDK_2.0 2.2
510 rte_sched_port_config@DPDK_2.0 2.2
511 rte_sched_port_dequeue@DPDK_2.0 2.2
512 rte_sched_port_enqueue@DPDK_2.0 2.2
513 rte_sched_port_free@DPDK_2.0 2.2
514 rte_sched_port_get_memory_footprint@DPDK_2.0 2.2
515 rte_sched_port_pkt_read_color@DPDK_2.1 2.2
516 rte_sched_port_pkt_read_tree_path@DPDK_2.1 2.2
517 rte_sched_port_pkt_write@DPDK_2.1 2.2
518 rte_sched_queue_read_stats@DPDK_2.0 2.2
519 rte_sched_subport_config@DPDK_2.0 2.2
520 rte_sched_subport_read_stats@DPDK_2.0 2.2
521 rte_set_application_usage_hook@DPDK_2.0 2.2
522 rte_set_log_level@DPDK_2.0 2.2
523 rte_set_log_type@DPDK_2.0 2.2
524 rte_socket_id@DPDK_2.0 2.2
525 rte_strerror@DPDK_2.0 2.2
526 rte_strsplit@DPDK_2.0 2.2
527 rte_sys_gettid@DPDK_2.0 2.2
528 rte_table_acl_ops@DPDK_2.0 2.2
529 rte_table_array_ops@DPDK_2.0 2.2
530 rte_table_hash_ext_ops@DPDK_2.0 2.2
531 rte_table_hash_key16_ext_dosig_ops@DPDK_2.2 2.2
532 rte_table_hash_key16_ext_ops@DPDK_2.0 2.2
533 rte_table_hash_key16_lru_ops@DPDK_2.0 2.2
534 rte_table_hash_key32_ext_ops@DPDK_2.0 2.2
535 rte_table_hash_key32_lru_ops@DPDK_2.0 2.2
536 rte_table_hash_key8_ext_dosig_ops@DPDK_2.0 2.2
537 rte_table_hash_key8_ext_ops@DPDK_2.0 2.2
538 rte_table_hash_key8_lru_dosig_ops@DPDK_2.0 2.2
539 rte_table_hash_key8_lru_ops@DPDK_2.0 2.2
540 rte_table_hash_lru_ops@DPDK_2.0 2.2
541 rte_table_lpm_ipv6_ops@DPDK_2.0 2.2
542 rte_table_lpm_ops@DPDK_2.0 2.2
543 rte_table_stub_ops@DPDK_2.0 2.2
544 rte_thread_get_affinity@DPDK_2.0 2.2
545 rte_thread_set_affinity@DPDK_2.0 2.2
546 rte_timer_dump_stats@DPDK_2.0 2.2
547 rte_timer_init@DPDK_2.0 2.2
548 rte_timer_manage@DPDK_2.0 2.2
549 rte_timer_pending@DPDK_2.0 2.2
550 rte_timer_reset@DPDK_2.0 2.2
551 rte_timer_reset_sync@DPDK_2.0 2.2
552 rte_timer_stop@DPDK_2.0 2.2
553 rte_timer_stop_sync@DPDK_2.0 2.2
554 rte_timer_subsystem_init@DPDK_2.0 2.2
555 rte_vhost_dequeue_burst@DPDK_2.0 2.2
556 rte_vhost_driver_callback_register@DPDK_2.0 2.2
557 rte_vhost_driver_register@DPDK_2.0 2.2
558 rte_vhost_driver_session_start@DPDK_2.0 2.2
559 rte_vhost_driver_unregister@DPDK_2.1 2.2
560 rte_vhost_enable_guest_notification@DPDK_2.0 2.2
561 rte_vhost_enqueue_burst@DPDK_2.0 2.2
562 rte_vhost_feature_disable@DPDK_2.0 2.2
563 rte_vhost_feature_enable@DPDK_2.0 2.2
564 rte_vhost_feature_get@DPDK_2.0 2.2
565 rte_vlog@DPDK_2.0 2.2
566 rte_zmalloc@DPDK_2.0 2.2
567 rte_zmalloc_socket@DPDK_2.0 2.2
568 vt100_init@DPDK_2.0 2.2
569 vt100_parser@DPDK_2.0 2.2
diff --git a/ovs_build/dpdk_16.07/debian/patches/series b/ovs_build/dpdk_16.07/debian/patches/series
deleted file mode 100644
index e69de29..0000000
--- a/ovs_build/dpdk_16.07/debian/patches/series
+++ /dev/null
diff --git a/ovs_build/dpdk_16.07/debian/rules b/ovs_build/dpdk_16.07/debian/rules
deleted file mode 100755
index 6b16b1f..0000000
--- a/ovs_build/dpdk_16.07/debian/rules
+++ /dev/null
@@ -1,155 +0,0 @@
1#!/usr/bin/make -f
2# See debhelper(7) (uncomment to enable)
3# output every command that modifies files on the build system.
4#export DH_VERBOSE = 1
5
6# see EXAMPLES in dpkg-buildflags(1) and read /usr/share/dpkg/*
7DPKG_EXPORT_BUILDFLAGS = 1
8include /usr/share/dpkg/default.mk
9
10DEB_HOST_GNU_CPU := $(shell dpkg-architecture -qDEB_HOST_GNU_CPU)
11
12# see FEATURE AREAS in dpkg-buildflags(1)
13export DEB_BUILD_MAINT_OPTIONS = hardening=+all
14
15# build with debug symbols, dh_strip will create -dgbsyms packages by that
16export EXTRA_CFLAGS = -g -march=corei7-avx -mno-movbe -mno-abm -mno-fma -mno-bmi -mno-bmi2 -mno-avx2 -mno-lzcnt -mtune=corei7-avx
17
18# see ENVIRONMENT in dpkg-buildflags(1)
19# package maintainers to append CFLAGS
20#export DEB_CFLAGS_MAINT_APPEND = -Wall -pedantic
21# package maintainers to append LDFLAGS
22#export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed
23
24DPDK_CONFIG = "$(DEB_HOST_GNU_CPU)-native-linuxapp-gcc"
25DPDK_STATIC_DIR = "debian/build/static-root"
26DPDK_SHARED_DIR = "debian/build/shared-root"
27
28clean:
29 dh_testdir
30 rm -rf debian/build debian/tmp
31 dh_clean
32
33build-config:
34 dh_testdir
35 sed -i '/RTE_MACHINE_CPUFLAG_AVX2/,+13 s/^/#/' lib/librte_acl/Makefile
36 sed -i '/__AVX2__/,+2 s/^/#/' mk/rte.cpuflags.mk
37 $(MAKE) O=$(DPDK_STATIC_DIR) T=$(DPDK_CONFIG) config
38 sed -ri 's,(RTE_MACHINE=).*,\1default,' \
39 $(DPDK_STATIC_DIR)/.config
40
41build-indep: build-config
42 dh_testdir
43 $(MAKE) O=$(DPDK_STATIC_DIR) doc-api-html doc-guides-html
44
45build-arch: build-config
46 dh_testdir
47 echo "CPUFLAGS_LIST := -DRTE_COMPILE_TIME_CPUFLAGS=" > mk/rte.cpuflags.mk
48 $(MAKE) O=$(DPDK_STATIC_DIR) build
49 # Unfortunately the decision about having static or shared libraries is
50 # made for the whole build, which then produces only .a or .so files
51 # (but not both).
52 # And the target layout for target selection has no field for the
53 # type of library.
54 # Right now I hack this by doing a second build which only differs in
55 # the selection of shared libs.
56 # Shared libs should be default, so the previous static build is only
57 # used to get static libraries.
58 cp -a $(DPDK_STATIC_DIR) $(DPDK_SHARED_DIR)
59 sed -ri 's,(RTE_BUILD_SHARED_LIB=).*,\1y,' \
60 $(DPDK_SHARED_DIR)/.config
61 $(MAKE) O=$(DPDK_SHARED_DIR) build
62
63build: build-arch build-indep
64
65binary-indep: PACKAGE_NAME=dpdk-doc
66binary-indep: DOCDIR=usr/share/doc/dpdk
67binary-indep: export DH_OPTIONS=--indep
68binary-indep:
69 dh_testroot
70 dh_prep
71 dh_testdir
72 dh_installdirs
73 dh_install
74 dh_installdocs
75 dh_installchangelogs
76 dh_lintian
77 # Package: dpdk-doc
78 # All files based on the install-doc rule (includes examples)
79 $(MAKE) O=$(DPDK_SHARED_DIR) prefix=/usr \
80 DESTDIR=debian/dpdk-doc install-doc
81 dh_link
82 dh_compress
83 dh_fixperms
84 dh_installdeb
85 dh_gencontrol
86 dh_md5sums
87 dh_builddeb
88
89binary-arch: LIBDIR=usr/lib/$(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
90binary-arch: export DH_OPTIONS=--arch
91binary-arch:
92 dh_testroot
93 dh_prep
94 dh_testdir
95 dh_installdirs
96 dh_install
97 dh_installdocs
98 dh_installchangelogs
99 dh_lintian
100 dh_systemd_enable
101 dh_installinit --no-start --no-restart-on-upgrade
102 dh_systemd_start --no-start --no-restart-on-upgrade
103 # Package: dpdk (runtime)
104 $(MAKE) O=$(DPDK_STATIC_DIR) prefix=/usr \
105 DESTDIR=debian/dpdk install-runtime
106 $(MAKE) O=$(DPDK_SHARED_DIR) prefix=/usr \
107 DESTDIR=debian/dpdk install-runtime
108 cp debian/dpdk.interfaces debian/dpdk/etc/dpdk/interfaces
109 #rm debian/dpdk/usr/sbin/dpdk_nic_bind
110 ln -s /usr/share/dpdk/tools/dpdk_nic_bind.py \
111 debian/dpdk/sbin/dpdk_nic_bind
112 # Package: libdpdk0 (bare runtime libs)
113 mkdir -p debian/libdpdk0/$(LIBDIR)
114 # NOTE so far upstream dpdk has not settled on really versioning the
115 # combined lib. There are discussions ongoing and various alternative
116 # approaches.
117 # We have to wait until that is clarified upstream (in a follow on dpdk
118 # version).
119 # One likely solution will make us ship the non combined .so and a
120 # linker script which replaces the combined lib.
121 # To easen package management a few notes how this will change if that
122 # happens:
123 # NOTE: linker script - this becomes a nop (linker skript has no sover
124 # on its own)
125 rm debian/dpdk/usr/lib/libdpdk.so
126 cp -a $(DPDK_SHARED_DIR)/lib/* debian/libdpdk0/$(LIBDIR)/
127 # NOTE: linker script - insert basenames loop for all .so's
128 # NOTE: linker script - we also will need multiple symbol files then
129 # Package: dpdk-dev (build environment)
130 $(MAKE) O=$(DPDK_SHARED_DIR) prefix=/usr \
131 DESTDIR=debian/dpdk-dev install-sdk
132 cp $(DPDK_SHARED_DIR)/.config debian/dpdk-dev/usr/share/dpdk/config
133 # Package: libdpdk-dev (bare headers and static devel libs)
134 mkdir -p debian/libdpdk-dev/usr/lib/
135 # NOTE: linker script - insert basenames loop for all .a's
136 #ln -s /$(LIBDIR)/libdpdk.so \
137 # debian/libdpdk-dev/$(LIBDIR)/libdpdk.so.0
138 cp -a $(DPDK_STATIC_DIR)/lib/* debian/libdpdk-dev/usr/lib/
139 mv debian/dpdk-dev/usr/include/dpdk debian/libdpdk-dev/usr/include/
140 # NOTE: linker script - package instead of removing all sublibs
141 rm -rf debian/dpdk/usr/lib*
142 dh_python2
143 dh_perl
144 dh_link
145 dh_compress
146 dh_fixperms
147 dh_strip
148 dh_makeshlibs
149 dh_shlibdeps
150 dh_installdeb
151 dh_gencontrol
152 dh_md5sums
153 dh_builddeb
154
155binary: binary-arch binary-indep
diff --git a/ovs_build/dpdk_16.07/debian/source/format b/ovs_build/dpdk_16.07/debian/source/format
deleted file mode 100644
index 163aaf8..0000000
--- a/ovs_build/dpdk_16.07/debian/source/format
+++ /dev/null
@@ -1 +0,0 @@
13.0 (quilt)
diff --git a/ovs_build/dpdk_16.07/debian/tests/check-dpdk-supported-arch.sh b/ovs_build/dpdk_16.07/debian/tests/check-dpdk-supported-arch.sh
deleted file mode 100644
index 4361d2d..0000000
--- a/ovs_build/dpdk_16.07/debian/tests/check-dpdk-supported-arch.sh
+++ /dev/null
@@ -1,12 +0,0 @@
1#!/bin/bash
2
3arch=$(dpkg --print-architecture)
4case $arch in
5 amd64|i386)
6 echo "Architecture ${arch} supported, go on with test"
7 ;;
8 *)
9 echo "Architecture ${arch} not supported, SKIP test"
10 exit 0
11 ;;
12esac
diff --git a/ovs_build/dpdk_16.07/debian/tests/control b/ovs_build/dpdk_16.07/debian/tests/control
deleted file mode 100644
index addb2d5..0000000
--- a/ovs_build/dpdk_16.07/debian/tests/control
+++ /dev/null
@@ -1,8 +0,0 @@
1Tests: test-initscripts
2Restrictions: allow-stderr, isolation-machine, needs-root
3Depends: dpdk [amd64 i386], gawk, mount, systemd, sysvinit-utils
4
5Tests: test-linkage
6Restrictions: allow-stderr
7Depends: libdpdk0 [amd64 i386], libdpdk-dev [amd64 i386], libc6, libc6-dev, gcc,
8 grep, libpcap-dev, libxenstore3.0 [amd64 i386]
diff --git a/ovs_build/dpdk_16.07/debian/tests/test-initscripts b/ovs_build/dpdk_16.07/debian/tests/test-initscripts
deleted file mode 100644
index f465d6d..0000000
--- a/ovs_build/dpdk_16.07/debian/tests/test-initscripts
+++ /dev/null
@@ -1,143 +0,0 @@
1#!/bin/sh
2set -e
3
4basedir=$(dirname "$0")
5. "${basedir}"/check-dpdk-supported-arch.sh
6
7# Overall that could require up to 1.2G for hugepages in the test environment
8EXPECT2MHP=10
9# Some page sizes like e.g. 1G might not be available in all test environments
10# The test still configures 1 page of 1G size.
11# One of two things will happen, depending on the test environment:
12# - has 1G huge page size => they will tried to be allocated (usually env is
13# too small, but we want to see it fail gracefully for that)
14# We will not check for the 1G alloc, as we know it often fails in small adt's
15# - has no 1G huge page size (HW feature) => we check if it fails gracefully
16EXPECT1GHP=1
17
18DPDK_CONF="/etc/dpdk/dpdk.conf"
19DPDK_INTERF="/etc/dpdk/interfaces"
20
21checkhp() {
22 MMDIR="/sys/kernel/mm/hugepages/${1}"
23 EXPECTHP="${2}"
24 if [ -d "$MMDIR" -a -r "$MMDIR/nr_hugepages" ]; then
25 hpcount=$(cat "$MMDIR/nr_hugepages")
26 if [ "${hpcount}" -ne "${EXPECTHP}" ]; then
27 echo "Hugepages (${hpcount}) not as expected (${EXPECTHP})"
28 exit 1
29 else
30 echo "Hugepages ok (${hpcount})"
31 fi
32 fi
33}
34
35checkstatus() {
36 MARK=${1}
37 EXPMPCOUNT=${2}
38 PRE=${3}
39 POST=${4}
40 EXPECTEDSTATUS=${5}
41 echo "Status after ${MARK}"
42 echo "Status of the Service"
43 ${PRE} status "${POST}" || true
44
45 GOTSTATUS=$(${PRE} status "${POST}" | awk '/^ *Active: / { print $2 }')
46 if [ "${GOTSTATUS}" != "${EXPECTEDSTATUS}" ]; then
47 echo "Service status (${GOTSTATUS}) not as expected (${EXPECTEDSTATUS})"
48 exit 1
49 else
50 echo "Service status (${GOTSTATUS}) as expected"
51 fi
52
53 echo "Status of hugetlbfs mount points"
54 # this section is ok to create bad RCs when no mounts are available
55 set +e
56 grep hugetlbfs < /proc/mounts
57 htlbfscount=$(grep -c hugetlbfs < /proc/mounts)
58 set -e
59
60 # we have to reduce the expected mountpoint count in case some sizes are
61 # not supported by the current kernel/environment
62 if [ ${EXPMPCOUNT} -gt 0 ]; then
63 if [ ! -d /sys/kernel/mm/hugepages/hugepages-2048kB ]; then
64 EXPMPCOUNT=$((EXPMPCOUNT-1))
65 fi
66 if [ ! -d /sys/kernel/mm/hugepages/hugepages-1048576kB ]; then
67 EXPMPCOUNT=$((EXPMPCOUNT-1))
68 fi
69 fi
70
71 if [ "${htlbfscount}" -eq "${EXPMPCOUNT}" ]; then
72 echo "MP Count (${htlbfscount}) as expected (${EXPMPCOUNT})"
73 else
74 echo "MP Count (${htlbfscount}) not as expected (${EXPMPCOUNT})"
75 exit 1
76 fi
77
78 # check if setting HP worked
79 if [ "${EXPMPCOUNT}" -ne "0" ]; then
80 checkhp "hugepages-2048kB" "${EXPECT2MHP}"
81 # We do not check 1G alloc, as it is known to be often not available
82 fi
83}
84
85resetservice() {
86 # help a bit with memory fragmentation regarding huge page allocation
87 sync
88 echo 3 > /proc/sys/vm/drop_caches
89
90 # stopping and resetting Service
91 systemctl stop dpdk.service
92 systemctl reset-failed dpdk.service
93
94 echo "Unmounting all potential hugetlbfs mounts"
95 awk '/hugetlbfs/ {print $2}' /proc/mounts | while read hugetlbmount; do
96 umount -v "$hugetlbmount"
97 done
98}
99
100checkinitstyle() {
101 # We want to verify that
102 # - initially our environment has no hugetlbfs mount
103 # - a system without hugetlbfs mount gets it mounted
104 # - a restart of the service does neither drop nor duplicate the mount
105 PRE=${1}
106 POST=${2}
107 TYPE=${3}
108 printf "\n\n### Checking Type %s ###\n" "${TYPE}"
109 resetservice
110 checkstatus "${TYPE}-BEGIN" 0 "${PRE}" "${POST}" "inactive"
111 echo "### Starting Service ###"
112 ${PRE} start "${POST}"
113 checkstatus "${TYPE}-START" 2 "${PRE}" "${POST}" "active"
114 echo "### Restarting Service ###"
115 ${PRE} restart "${POST}"
116 checkstatus "${TYPE}-RESTART" 2 "${PRE}" "${POST}" "active"
117}
118
119echo "NR_2M_PAGES=$EXPECT2MHP" >> ${DPDK_CONF}
120echo "NR_1G_PAGES=$EXPECT1GHP" >> ${DPDK_CONF}
121
122# We can't rely on any real device for DPDK tests in adt-* environments. But
123# we can expect all kind of broken configuration not to break it (would be
124# detected via set -e).
125# So add all kind of known-to-be-broken definitions and expect it not to fail.
126cat <<EOF > ${DPDK_INTERF}
127# wrong bus
128pTi 0000:04:00.0 uio-pci-generic
129# not enough parms
1300000:04:00.0 uio-pci-generic
131# empty line
132
133# non existing device
134pci 1234:56:78.9 uio-pci-generic
135EOF
136
137# some had issues in the past caused by different init systems, so we test all
138# Direct Calls
139checkinitstyle "/etc/init.d/dpdk" "" "Direct"
140# System V style init
141checkinitstyle "service dpdk" "" "SysV"
142# SystemD style init
143checkinitstyle "systemctl" "dpdk.service" "SystemD"
diff --git a/ovs_build/dpdk_16.07/debian/tests/test-linkage b/ovs_build/dpdk_16.07/debian/tests/test-linkage
deleted file mode 100644
index 30d7642..0000000
--- a/ovs_build/dpdk_16.07/debian/tests/test-linkage
+++ /dev/null
@@ -1,41 +0,0 @@
1#!/bin/bash
2set -eu
3
4basedir=$(dirname "$0")
5. "${basedir}"/check-dpdk-supported-arch.sh
6
7cat > testlinkage.c << EOF
8#include <stdio.h>
9#include "dpdk/rte_common.h"
10
11int main()
12{
13 printf("Hello rte_exit %p\n", rte_exit);
14 return 0;
15}
16EOF
17
18# with broken linkage this will fail with undefined symbols
19printf "\n\nChecking compile with link against DPDK\n"
20gcc -v testlinkage.c -o testlinkage.bin -Wall -Werror -ldpdk
21echo "OK"
22
23printf "\n\nChecking for expected libraries\n"
24# The binary should inherit dependencies from the .so
25# check one of the libs that came in due to features
26ldd testlinkage.bin | grep libpcap
27# check one of the libs that came in due to basic dpdp linuxapp config
28ldd testlinkage.bin | grep libm
29# one that it uses implicitly
30ldd testlinkage.bin | grep libpthread
31echo "OK"
32
33printf "\n\nChecking test execution\n"
34# It doesn't do much, but it should work - so calling it is a minor extra test.
35# It is known to fail without SSE3 in e.g. some adt environments, in that
36# case check at least that we get the correct error message (this will trigger
37# a test fail if it neither finds the success nor the expected error message)
38(./testlinkage.bin 2>&1 || /bin/true ) | \
39grep -E 'ERROR: This system does not support "SSSE3".|Hello rte_exit 0x'
40
41echo "OK"
diff --git a/ovs_build/dpdk_16.07/debian/watch b/ovs_build/dpdk_16.07/debian/watch
deleted file mode 100644
index 418ce0c..0000000
--- a/ovs_build/dpdk_16.07/debian/watch
+++ /dev/null
@@ -1,2 +0,0 @@
1version=3
2http://www.dpdk.org/download /browse/dpdk/snapshot/dpdk-(.+)\.(?:zip|tgz|tbz|txz|(?:tar\.(?:gz|bz2|xz)))
diff --git a/pre_build_hook b/pre_build_hook
index 194a7b9..03c91c2 100755
--- a/pre_build_hook
+++ b/pre_build_hook
@@ -25,7 +25,7 @@ function build_pkg {
25 cp -r ${DEB_DIR}/* ${DIR}/repositories/ubuntu/ 25 cp -r ${DEB_DIR}/* ${DIR}/repositories/ubuntu/
26 26
27 rm -rf ${DEB_DIR}; mkdir -p ${DEB_DIR}; chmod 777 ${DEB_DIR}; 27 rm -rf ${DEB_DIR}; mkdir -p ${DEB_DIR}; chmod 777 ${DEB_DIR};
28 sudo docker run -v ${DEB_DIR}:/deb -t ovs_build /ovs_build/build-ovs-nsh-dpdk.sh 28 sudo docker run -v ${DEB_DIR}:/deb -t ovs_build /ovs_build/build-ovs-nsh.sh
29 cp -r ${DEB_DIR}/* ${DIR}/repositories/ubuntu/ 29 cp -r ${DEB_DIR}/* ${DIR}/repositories/ubuntu/
30 rm -rf ${DEB_DIR} 30 rm -rf ${DEB_DIR}
31 31