Clean up and Remove DPDK from ovs with NSH
Change-Id: If3d4e8d9fa00077fe21959ad61eed9b423bc1ae8 Signed-off-by: Guo Ruijing <ruijing.guo@intel.com>
This commit is contained in:
parent
9b5292b244
commit
0e55761328
|
@ -7,14 +7,14 @@ Openvswitch plugin
|
||||||
Overview
|
Overview
|
||||||
--------
|
--------
|
||||||
|
|
||||||
Fuel plugin fuel-plugin-ovs is developed to deploy OVS with NSH + DPDK
|
Fuel plugin fuel-plugin-ovs is developed to deploy OVS with NSH or OVS with DPDK
|
||||||
|
|
||||||
Requirements
|
Requirements
|
||||||
------------
|
------------
|
||||||
|
|
||||||
| Requirement | Version/Comment |
|
| Requirement | Version/Comment |
|
||||||
|----------------------------------|-----------------|
|
|----------------------------------|-----------------|
|
||||||
| Mirantis OpenStack compatibility | 9.0 |
|
| Mirantis OpenStack compatibility | 10.0 |
|
||||||
|
|
||||||
Recommendations
|
Recommendations
|
||||||
---------------
|
---------------
|
||||||
|
@ -60,7 +60,7 @@ Openvswitch plugin installation
|
||||||
|
|
||||||
id | name | version | package_version
|
id | name | version | package_version
|
||||||
---|-----------------|---------|----------------
|
---|-----------------|---------|----------------
|
||||||
1 | fuel-plugin-ovs | 0.9.0 | 4.0.0
|
1 | fuel-plugin-ovs | 1.0.0 | 4.0.0
|
||||||
|
|
||||||
8. Plugin is ready to use and can be enabled on the Settings tab of the Fuel web UI.
|
8. Plugin is ready to use and can be enabled on the Settings tab of the Fuel web UI.
|
||||||
|
|
||||||
|
|
|
@ -8,13 +8,11 @@ cd $INSTALL_HOME
|
||||||
host=$1
|
host=$1
|
||||||
nsh=$2
|
nsh=$2
|
||||||
dpdk=$3
|
dpdk=$3
|
||||||
dpdk_socket_mem=${4:-''}
|
|
||||||
pmd_cpu_mask=${5:-'2'}
|
|
||||||
deb_arch=$(dpkg --print-architecture)
|
deb_arch=$(dpkg --print-architecture)
|
||||||
|
|
||||||
ovs="ovs-dpdk_${deb_arch}.tar.gz"
|
ovs="ovs-dpdk_${deb_arch}.tar.gz"
|
||||||
if [ $nsh = 'true' ]; then
|
if [ $nsh = 'true' ]; then
|
||||||
ovs="ovs-nsh-dpdk_${deb_arch}.tar.gz"
|
ovs="ovs-nsh_${deb_arch}.tar.gz"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
apt-get install -y --allow-unauthenticated dkms
|
apt-get install -y --allow-unauthenticated dkms
|
||||||
|
@ -31,17 +29,4 @@ then
|
||||||
dpkg -i openvswitch-switch-dpdk_*.deb
|
dpkg -i openvswitch-switch-dpdk_*.deb
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ $dpdk = 'true' && -n $dpdk_socket_mem ]]
|
|
||||||
then
|
|
||||||
#Set to 0, dpdk init script mount hugepages but don't change current allocation
|
|
||||||
sed -i "s/[# ]*\(NR_2M_PAGES=\).*/\10/" /etc/dpdk/dpdk.conf
|
|
||||||
service dpdk start
|
|
||||||
|
|
||||||
ovs-vsctl --no-wait set Open_vSwitch . other_config:dpdk-init=true
|
|
||||||
ovs-vsctl --no-wait set Open_vSwitch . other_config:dpdk-socket-mem="$dpdk_socket_mem"
|
|
||||||
ovs-vsctl --no-wait set Open_vSwitch . other_config:pmd-cpu-mask="$pmd_cpu_mask"
|
|
||||||
|
|
||||||
service openvswitch-switch restart
|
|
||||||
fi
|
|
||||||
|
|
||||||
rm -rf $INSTALL_HOME
|
rm -rf $INSTALL_HOME
|
||||||
|
|
|
@ -2,18 +2,14 @@ notice('MODULAR: ovs-install.pp')
|
||||||
# get options
|
# get options
|
||||||
$master_ip = hiera('master_ip')
|
$master_ip = hiera('master_ip')
|
||||||
$ovs_settings = hiera('fuel-plugin-ovs')
|
$ovs_settings = hiera('fuel-plugin-ovs')
|
||||||
$dpdk = hiera_hash('dpdk', {})
|
|
||||||
|
|
||||||
$install_nsh = $ovs_settings['install_nsh']
|
$install_nsh = $ovs_settings['install_nsh']
|
||||||
$install_dpdk = $ovs_settings['install_dpdk']
|
$install_dpdk = $ovs_settings['install_dpdk']
|
||||||
$install_on_controller = $ovs_settings['install_on_controller']
|
|
||||||
$ovs_socket_mem = join(pick($dpdk['ovs_socket_mem'], []), ',')
|
|
||||||
$ovs_pmd_core_mask = $dpdk['ovs_pmd_core_mask']
|
|
||||||
|
|
||||||
if $operatingsystem == 'Ubuntu' {
|
if $operatingsystem == 'Ubuntu' {
|
||||||
if (!roles_include(['primary-controller', 'controller'])) or $install_on_controller {
|
if (!roles_include(['primary-controller', 'controller'])) or $install_on_controller {
|
||||||
exec { 'install ovs_nsh_dpdk':
|
exec { 'install ovs_nsh_dpdk':
|
||||||
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}",
|
command => "/etc/fuel/plugins/fuel-plugin-ovs-1.0/install.sh ${master_ip} ${install_nsh} ${install_dpdk}",
|
||||||
path => '/usr/bin:/usr/sbin:/bin:/sbin',
|
path => '/usr/bin:/usr/sbin:/bin:/sbin',
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,9 +1,8 @@
|
||||||
# get options
|
notice('MODULAR: ovs-update-flavors')
|
||||||
$master_ip = hiera('master_ip')
|
|
||||||
|
|
||||||
if $operatingsystem == 'Ubuntu' {
|
if $operatingsystem == 'Ubuntu' {
|
||||||
exec { 'update flavors':
|
exec { 'update flavors':
|
||||||
command => "curl http://${master_ip}:8080/plugins/fuel-plugin-ovs-1.0/deployment_scripts/update_flavors.sh | bash -s",
|
command => "/etc/fuel/plugins/fuel-plugin-ovs-1.0/update_flavors.sh",
|
||||||
path => '/usr/bin:/usr/sbin:/bin:/sbin',
|
path => '/usr/bin:/usr/sbin:/bin:/sbin',
|
||||||
}
|
}
|
||||||
} elsif $operatingsystem == 'CentOS' {
|
} elsif $operatingsystem == 'CentOS' {
|
||||||
|
|
|
@ -2,10 +2,8 @@
|
||||||
type: puppet
|
type: puppet
|
||||||
version: 2.1.0
|
version: 2.1.0
|
||||||
groups: [compute, primary-controller, controller]
|
groups: [compute, primary-controller, controller]
|
||||||
requires: [allocate_hugepages]
|
requires: [setup_repositories]
|
||||||
required_for: [netconfig]
|
required_for: [netconfig]
|
||||||
condition:
|
|
||||||
yaql_exp: changedAny($.get('fuel-plugin-ovs'), $.get('dpdk'))
|
|
||||||
parameters:
|
parameters:
|
||||||
puppet_manifest: puppet/manifests/ovs-install.pp
|
puppet_manifest: puppet/manifests/ovs-install.pp
|
||||||
puppet_modules: puppet/modules:/etc/puppet/modules
|
puppet_modules: puppet/modules:/etc/puppet/modules
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
# Plugin name
|
# Plugin name
|
||||||
name: fuel-plugin-ovs
|
name: fuel-plugin-ovs
|
||||||
# Human-readable name for your plugin
|
# Human-readable name for your plugin
|
||||||
title: Install Openvswitch with NSH/DPDK
|
title: Install Open vSwitch with NSH or Open vSwitch with DPDK
|
||||||
# Plugin version
|
# Plugin version
|
||||||
version: '1.0.0'
|
version: '1.0.0'
|
||||||
# Description
|
# Description
|
||||||
description: 'This plugin provides to deploy openvswitch with NSH/DPDK'
|
description: 'This plugin provides to deploy Open vSwitch with NSH or Open vSwitch with DPDK'
|
||||||
# Required fuel version
|
# Required fuel version
|
||||||
fuel_version: ['10.0']
|
fuel_version: ['10.0']
|
||||||
# Specify license of your plugin
|
# Specify license of your plugin
|
||||||
|
|
|
@ -6,7 +6,7 @@ OVS_COMMIT=f4b0e64cffb4777ff03d48621c3eadcf1d8c19f3
|
||||||
OVS_VER=${OVS_VER:-2.6.1}
|
OVS_VER=${OVS_VER:-2.6.1}
|
||||||
BUILD_DEST=${BUILD_DEST:-/deb}
|
BUILD_DEST=${BUILD_DEST:-/deb}
|
||||||
BUILD_SRC="$(dirname `readlink -f $0`)"
|
BUILD_SRC="$(dirname `readlink -f $0`)"
|
||||||
BUILD_HOME=${BUILD_HOME:-/tmp/ovs-dpdk}
|
BUILD_HOME=${BUILD_HOME:-/tmp/ovs-nsh}
|
||||||
DEB_ARCH="$(dpkg --print-architecture)"
|
DEB_ARCH="$(dpkg --print-architecture)"
|
||||||
|
|
||||||
export DEB_BUILD_OPTIONS='parallel=8 nocheck'
|
export DEB_BUILD_OPTIONS='parallel=8 nocheck'
|
||||||
|
@ -17,40 +17,6 @@ sudo apt-get -y --force-yes install devscripts dpkg-dev git wget dkms
|
||||||
rm -rf ${BUILD_HOME}; mkdir -p ${BUILD_HOME}/deb
|
rm -rf ${BUILD_HOME}; mkdir -p ${BUILD_HOME}/deb
|
||||||
|
|
||||||
cd ${BUILD_HOME}
|
cd ${BUILD_HOME}
|
||||||
wget -c http://fast.dpdk.org/rel/dpdk-16.07.tar.xz
|
|
||||||
xz -d dpdk-16.07.tar.xz; tar xvf dpdk-16.07.tar
|
|
||||||
cd dpdk-16.07
|
|
||||||
cp -r ${BUILD_SRC}/dpdk_16.07.fuel/debian .
|
|
||||||
cat << EOF > debian/changelog
|
|
||||||
dpdk (16.07-0ubuntu5~u1604+fuel10) xenial; urgency=low
|
|
||||||
|
|
||||||
* Rebuild debian package
|
|
||||||
* update librte-eal2.symbols
|
|
||||||
|
|
||||||
-- Ruijing Guo <ruijing.guo@intel.com> $(date --rfc-2822)
|
|
||||||
EOF
|
|
||||||
|
|
||||||
# copy from debian/control
|
|
||||||
sudo apt-get install -y --force-yes debhelper \
|
|
||||||
dh-python \
|
|
||||||
dh-systemd \
|
|
||||||
doxygen \
|
|
||||||
graphviz \
|
|
||||||
inkscape \
|
|
||||||
libcap-dev \
|
|
||||||
libpcap-dev \
|
|
||||||
libxen-dev \
|
|
||||||
libxenstore3.0 \
|
|
||||||
python \
|
|
||||||
python-sphinx \
|
|
||||||
texlive-fonts-recommended \
|
|
||||||
texlive-latex-extra
|
|
||||||
debian/rules build; fakeroot debian/rules binary
|
|
||||||
|
|
||||||
cd ${BUILD_HOME}
|
|
||||||
sudo apt-get install -y --force-yes hwdata
|
|
||||||
sudo dpkg -i *.deb
|
|
||||||
mv *.deb ${BUILD_DEST}
|
|
||||||
|
|
||||||
# copy from debian/control
|
# copy from debian/control
|
||||||
sudo apt-get install -y --force-yes autoconf \
|
sudo apt-get install -y --force-yes autoconf \
|
||||||
|
@ -79,21 +45,7 @@ for patch in ${PATCHES}
|
||||||
do
|
do
|
||||||
patch -p1 < ${BUILD_SRC}/ovs_nsh_patches/v2.6.1/${patch}
|
patch -p1 < ${BUILD_SRC}/ovs_nsh_patches/v2.6.1/${patch}
|
||||||
done
|
done
|
||||||
cd ${BUILD_HOME}; cp -r ovs ovs-dpdk
|
|
||||||
|
|
||||||
cd ovs-dpdk
|
|
||||||
cp -r ${BUILD_SRC}/openvswitch_2.6-dpdk_16.07/debian .
|
|
||||||
cat << EOF > debian/changelog
|
|
||||||
openvswitch-dpdk (${OVS_VER}-1.nsh) unstable; urgency=low
|
|
||||||
[ Open vSwitch team ]
|
|
||||||
* support NSH & DPDK 16.07
|
|
||||||
|
|
||||||
-- Open vSwitch team <dev@openvswitch.org> $(date --rfc-2822)
|
|
||||||
EOF
|
|
||||||
|
|
||||||
debian/rules build; fakeroot debian/rules binary
|
|
||||||
|
|
||||||
cd ${BUILD_HOME}/ovs
|
|
||||||
cat << EOF > debian/changelog
|
cat << EOF > debian/changelog
|
||||||
openvswitch (${OVS_VER}-1.nsh) unstable; urgency=low
|
openvswitch (${OVS_VER}-1.nsh) unstable; urgency=low
|
||||||
[ Open vSwitch team ]
|
[ Open vSwitch team ]
|
||||||
|
@ -105,4 +57,4 @@ debian/rules build; fakeroot debian/rules binary
|
||||||
|
|
||||||
cp -r ${BUILD_HOME}/*.deb ${BUILD_HOME}/deb
|
cp -r ${BUILD_HOME}/*.deb ${BUILD_HOME}/deb
|
||||||
cd ${BUILD_HOME}/deb
|
cd ${BUILD_HOME}/deb
|
||||||
tar czvf ${BUILD_DEST}/ovs-nsh-dpdk_${DEB_ARCH}.tar.gz .;
|
tar czvf ${BUILD_DEST}/ovs-nsh_${DEB_ARCH}.tar.gz .;
|
|
@ -1,3 +0,0 @@
|
||||||
dpdk (16.07-1) unstable; urgency=low
|
|
||||||
* DPDK 16.07
|
|
||||||
-- DPDK team <dev@dpdk.org> Sat, 03 Sep 2016 20:00:00 +0200
|
|
|
@ -1 +0,0 @@
|
||||||
9
|
|
|
@ -1,81 +0,0 @@
|
||||||
Source: dpdk
|
|
||||||
Priority: optional
|
|
||||||
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
|
|
||||||
Build-Depends: debhelper (>= 9),
|
|
||||||
dh-python,
|
|
||||||
dh-systemd (>= 1.5),
|
|
||||||
doxygen,
|
|
||||||
graphviz,
|
|
||||||
inkscape,
|
|
||||||
libcap-dev,
|
|
||||||
libpcap-dev,
|
|
||||||
libxen-dev,
|
|
||||||
libxenstore3.0,
|
|
||||||
python,
|
|
||||||
python-sphinx,
|
|
||||||
texlive-fonts-recommended,
|
|
||||||
texlive-latex-extra
|
|
||||||
Standards-Version: 3.9.6
|
|
||||||
Section: libs
|
|
||||||
Homepage: http://www.dpdk.org
|
|
||||||
Vcs-Original-Git: git://dpdk.org/dpdk
|
|
||||||
Vcs-Original-Browser: http://www.dpdk.org/browse/dpdk/refs/
|
|
||||||
Vcs-Git: https://git.launchpad.net/~ubuntu-server/dpdk
|
|
||||||
Vcs-Browser: https://code.launchpad.net/~ubuntu-server/dpdk/+git/dpdk
|
|
||||||
|
|
||||||
Package: dpdk
|
|
||||||
Section: devel
|
|
||||||
Architecture: amd64 i386
|
|
||||||
Depends: libdpdk0 (= ${binary:Version}),
|
|
||||||
lsb-base (>= 3.2-14),
|
|
||||||
${misc:Depends},
|
|
||||||
${python:Depends},
|
|
||||||
${shlibs:Depends}
|
|
||||||
Suggests: linux-image-generic
|
|
||||||
Description: Data Plane Development Kit (runtime)
|
|
||||||
DPDK is a set of libraries for fast packet processing. Applications run
|
|
||||||
in user-space and communicate directly with dedicated network interfaces.
|
|
||||||
This package contains the runtime environment to run DPDK applications.
|
|
||||||
|
|
||||||
Package: dpdk-dev
|
|
||||||
Section: devel
|
|
||||||
Architecture: amd64 i386
|
|
||||||
Depends: libdpdk0 (= ${binary:Version}), ${misc:Depends}
|
|
||||||
Description: Data Plane Development Kit (development files)
|
|
||||||
DPDK is a set of libraries for fast packet processing. Applications run
|
|
||||||
in user-space and communicate directly with dedicated network interfaces.
|
|
||||||
This package contains examples and the upstream build environment. It is
|
|
||||||
not strictly required in order to build external applications.
|
|
||||||
|
|
||||||
Package: dpdk-doc
|
|
||||||
Section: doc
|
|
||||||
Architecture: all
|
|
||||||
Depends: libjs-jquery, libjs-underscore, ${misc:Depends}
|
|
||||||
Description: Data Plane Development Kit (documentation)
|
|
||||||
DPDK is a set of libraries for fast packet processing. Applications run
|
|
||||||
in user-space and communicate directly with dedicated network interfaces.
|
|
||||||
This package contains the complete set of documentation and guides.
|
|
||||||
|
|
||||||
Package: libdpdk0
|
|
||||||
Architecture: amd64 i386
|
|
||||||
Multi-Arch: same
|
|
||||||
Pre-Depends: ${misc:Pre-Depends}
|
|
||||||
Depends: ${misc:Depends}, ${shlibs:Depends}
|
|
||||||
Description: Data Plane Development Kit (runtime libraries)
|
|
||||||
DPDK is a set of libraries for fast packet processing. Applications run
|
|
||||||
in user-space and communicate directly with dedicated network interfaces.
|
|
||||||
This package contains the runtime libraries which require at least SSE3
|
|
||||||
support in the CPU.
|
|
||||||
|
|
||||||
Package: libdpdk-dev
|
|
||||||
Section: libdevel
|
|
||||||
Architecture: amd64 i386
|
|
||||||
Multi-Arch: same
|
|
||||||
Pre-Depends: ${misc:Pre-Depends}
|
|
||||||
Depends: libdpdk0 (= ${binary:Version}), ${misc:Depends}
|
|
||||||
Description: Data Plane Development Kit (basic development files)
|
|
||||||
DPDK is a set of libraries for fast packet processing. Applications run
|
|
||||||
in user-space and communicate directly with dedicated network interfaces.
|
|
||||||
This package contains the basic headers and library files required to
|
|
||||||
build external applications which will also require at least SSE3 support
|
|
||||||
when running.
|
|
|
@ -1,48 +0,0 @@
|
||||||
Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
|
|
||||||
Upstream-Name: dpdk
|
|
||||||
Source: http://dpdk.org
|
|
||||||
|
|
||||||
Files: *
|
|
||||||
Copyright: 2008-2014 Cisco Systems, Inc.
|
|
||||||
2012-2014 6WIND S.A.
|
|
||||||
1999-2015 Intel Corporation.
|
|
||||||
2010-2013 Tilera Corporation.
|
|
||||||
2012 Mellanox.
|
|
||||||
2007 VMware, Inc.
|
|
||||||
2007 Nuova Systems, Inc.
|
|
||||||
2014 IBM Corporation.
|
|
||||||
License: BSD+GPLv2+LGPLv2
|
|
||||||
On Debian systems, the complete text of the BSD License can be
|
|
||||||
found in "/usr/share/common-licenses/BSD".
|
|
||||||
.
|
|
||||||
This package is free software; you can redistribute it and/or modify
|
|
||||||
it under the terms of the GNU General Public License as published by
|
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
|
||||||
(at your option) any later version.
|
|
||||||
.
|
|
||||||
This package is distributed in the hope that it will be useful,
|
|
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
GNU General Public License for more details.
|
|
||||||
.
|
|
||||||
You should have received a copy of the GNU General Public License
|
|
||||||
along with this program. If not, see <http://www.gnu.org/licenses/>
|
|
||||||
.
|
|
||||||
On Debian systems, the complete text of the GNU General
|
|
||||||
Public License version 2 can be found in "/usr/share/common-licenses/GPL-2".
|
|
||||||
|
|
||||||
Files: debian/*
|
|
||||||
Copyright: 2015 Canonical Ltd. <stefan.bader@canonical.com>
|
|
||||||
Copyright: 2015, 2016 Canonical Ltd. <christian.ehrhardt@canonical.com>
|
|
||||||
License: GPL-3
|
|
||||||
This program is free software: you can redistribute it and/or modify it
|
|
||||||
under the terms of the GNU General Public License version 3, as published
|
|
||||||
by the Free Software Foundation.
|
|
||||||
.
|
|
||||||
This program is distributed in the hope that it will be useful, but
|
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranties of
|
|
||||||
MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR
|
|
||||||
PURPOSE. See the GNU General Public License for more details.
|
|
||||||
.
|
|
||||||
You should have received a copy of the GNU General Public License along
|
|
||||||
with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
|
@ -1 +0,0 @@
|
||||||
usr/share/dpdk
|
|
|
@ -1 +0,0 @@
|
||||||
debian/dpdk-sdk-env.sh /usr/share/dpdk/
|
|
|
@ -1,52 +0,0 @@
|
||||||
dpdk for Debian
|
|
||||||
---------------
|
|
||||||
|
|
||||||
This package is currently compiled for the lowest possible CPU requirements.
|
|
||||||
Which still requires at least SSE3 to be supported by the CPU.
|
|
||||||
|
|
||||||
dpdk (runtime) / libdpdk0:
|
|
||||||
|
|
||||||
For runtime /etc/dpdk/interfaces holds a list of PCI devices to be assigned
|
|
||||||
to DPDK compatible drivers and /etc/dpdk/dpdk.conf allows one to define the
|
|
||||||
number of hugepages to be reserved at boot.
|
|
||||||
The runtime environment is not required to build applications that use
|
|
||||||
DPDK but if those applications get packaged they should depend on the
|
|
||||||
runtime.
|
|
||||||
|
|
||||||
Since DPDK technically would be able to use all of your compatible card/driver
|
|
||||||
combination it is required that you take care of blacklisting / whitelisting
|
|
||||||
network cards to tell dpdk which it has to to initialize (especially true for
|
|
||||||
virtio-pci as the normal kernel driver is considered compatible).
|
|
||||||
|
|
||||||
If you are working with virtio-pci network cards it isn't a hard requirement to
|
|
||||||
assign them to a dpdk compatible userspace driver like uio_pci_generic. But you
|
|
||||||
have to at least unbind them from the default kernel driver (virtio-pci) to
|
|
||||||
avoid bugs by dpdk and the kernel working on them simultaneously. It is
|
|
||||||
recommended to reassign them to dpdk compatible drivers using
|
|
||||||
/etc/dpdk/interfaces (just as you would with any physical card).
|
|
||||||
|
|
||||||
libdpdk0 contains the shared object needed to run a program in terms of symbol
|
|
||||||
resolution, but none of the other runtime environment pieces.
|
|
||||||
|
|
||||||
dpdk-dev / libdpdk-dev:
|
|
||||||
|
|
||||||
The minimum requirement for developing external applications is libdpdk-dev,
|
|
||||||
which brings the headers and library files.
|
|
||||||
|
|
||||||
In dpdk-dev is the upstream makefile environment. Sample applications, which
|
|
||||||
are shipped in dpdk-doc, are providing makefiles.
|
|
||||||
Those makefiles need to find the dpdk build system. To do so they need some
|
|
||||||
environment variables defined:
|
|
||||||
export RTE_TARGET="$(uname -m)-default-linuxapp-gcc"
|
|
||||||
export RTE_SDK="/usr/share/dpdk/"
|
|
||||||
export RTE_INCLUDE="/usr/include/dpdk"
|
|
||||||
Those can be set by the user to overwrite with a custom path/config. If no
|
|
||||||
custom environment is used it is recommended to source the file
|
|
||||||
/usr/share/dpdk/dpdk-sdk-env.sh which comes with dpdk-dev.
|
|
||||||
If the paths ever change or there will be more/less variables needed to build
|
|
||||||
against dpdk-dev that file will be adjusted for you.
|
|
||||||
|
|
||||||
Alternatively /usr/include/dpdk/rte_config.h has to be pre-included:
|
|
||||||
CFLAGS += -I/usr/include/dpdk -irte_config.h
|
|
||||||
|
|
||||||
-- Christian Ehrhardt <christian.ehrhardt@canonical.com> Thu, 04 Feb 2016 09:16:11 +0100
|
|
|
@ -1 +0,0 @@
|
||||||
usr/share/doc/dpdk
|
|
|
@ -1,251 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
#
|
|
||||||
# dpdk-init: startup script to initialize a dpdk runtime environment
|
|
||||||
#
|
|
||||||
# Copyright 2015-2016 Canonical Ltd.
|
|
||||||
# Autor: Stefan Bader <stefan.bader@canonical.com>
|
|
||||||
# Autor: Christian Ehrhardt <christian.ehrhardt@canonical.com>
|
|
||||||
#
|
|
||||||
# This program is free software: you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License version 3,
|
|
||||||
# as published by the Free Software Foundation.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
#
|
|
||||||
set -e
|
|
||||||
|
|
||||||
DPDK_BIND="/sbin/dpdk_nic_bind"
|
|
||||||
DPDK_INTERF="/etc/dpdk/interfaces"
|
|
||||||
|
|
||||||
|
|
||||||
# pagesize supports [G|g]/[M|m]/[K|k]
|
|
||||||
get_kbytes() {
|
|
||||||
local unit
|
|
||||||
local num
|
|
||||||
unit=$(echo "${1}" | sed 's/[0-9]*//g')
|
|
||||||
num=$(echo "${1}" | sed 's/[^0-9]*//g')
|
|
||||||
case ${unit} in
|
|
||||||
*g | *G)
|
|
||||||
echo $((num*1024*1024))
|
|
||||||
;;
|
|
||||||
*m | *M)
|
|
||||||
echo $((num*1024))
|
|
||||||
;;
|
|
||||||
*k | *K)
|
|
||||||
echo $((num))
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo $((num/1024))
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
}
|
|
||||||
|
|
||||||
get_default_hpgsz() {
|
|
||||||
default_hpgsz=$(grep "Hugepagesize:" /proc/meminfo \
|
|
||||||
| sed 's/^Hugepagesize:\s*//g' | sed 's/\s*kB$//g')
|
|
||||||
echo "${default_hpgsz}"
|
|
||||||
}
|
|
||||||
|
|
||||||
get_hugetlbfs_mountpoint() {
|
|
||||||
local requested_hpgsz
|
|
||||||
local mp_hpgsz
|
|
||||||
requested_hpgsz=$(get_kbytes "${1}")
|
|
||||||
|
|
||||||
grep hugetlbfs /proc/mounts | while read \
|
|
||||||
mntfrom mntpoint mntfstype mntopt mntdump mntfsck; do
|
|
||||||
|
|
||||||
# check if the current muntpoint is of the requested huge page size
|
|
||||||
case ${mntopt} in
|
|
||||||
*pagesize=*)
|
|
||||||
mp_hpgsz=$(echo "${mntopt}" | sed 's/.*pagesize=//g' | sed 's/,.*//g')
|
|
||||||
mp_hpgsz=$(get_kbytes "${mp_hpgsz}")
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
mp_hpgsz=$(get_default_hpgsz)
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
if [ "${requested_hpgsz}" -eq "${mp_hpgsz}" ]; then
|
|
||||||
echo "${mntpoint}"
|
|
||||||
return
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
}
|
|
||||||
|
|
||||||
_mount_hugetlbfs() {
|
|
||||||
local MNT="/dev/hugepages"
|
|
||||||
local MNTOPTS=""
|
|
||||||
local requested_hpgsz
|
|
||||||
local default_hpgsz
|
|
||||||
requested_hpgsz=$(get_kbytes "${1}")
|
|
||||||
default_hpgsz=$(get_default_hpgsz)
|
|
||||||
|
|
||||||
# kernel might not support the requested size
|
|
||||||
if [ ! -d "/sys/kernel/mm/hugepages/hugepages-${requested_hpgsz}kB" ]; then
|
|
||||||
echo "WARNING: requested page size of ${requested_hpgsz}kB " \
|
|
||||||
"not supported by the kernel"
|
|
||||||
return 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
# special case if this is not the default huge page size
|
|
||||||
if [ "${requested_hpgsz}" -ne "${default_hpgsz}" ]; then
|
|
||||||
MNT="${MNT}-${requested_hpgsz}"
|
|
||||||
MNTOPTS="pagesize=${requested_hpgsz}K"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ ! -e "${MNT}" ]; then
|
|
||||||
mkdir "${MNT}"
|
|
||||||
if [ $? -ne 0 ]; then
|
|
||||||
echo "Could not create directory ${MNT}!" >&2
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
mount -thugetlbfs hugetlbfs "${MNT}" -o "${MNTOPTS}"
|
|
||||||
return $?
|
|
||||||
}
|
|
||||||
|
|
||||||
#
|
|
||||||
# The DPDK library will use the first mounted instance it finds for a given
|
|
||||||
# page size. so if there is already one for a given size there is no need to
|
|
||||||
# create another for the same huge page size.
|
|
||||||
#
|
|
||||||
mount_hugetlbfs() {
|
|
||||||
if [ ! -r /etc/dpdk/dpdk.conf ]; then
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
. /etc/dpdk/dpdk.conf
|
|
||||||
|
|
||||||
# if a page size is requested, there has to be a mountpoint for that size
|
|
||||||
if [ -n "${NR_2M_PAGES}" -a -z "$(get_hugetlbfs_mountpoint '2M')" ]; then
|
|
||||||
_mount_hugetlbfs 2M
|
|
||||||
fi
|
|
||||||
if [ -n "${NR_1G_PAGES}" -a -z "$(get_hugetlbfs_mountpoint '1G')" ]; then
|
|
||||||
_mount_hugetlbfs 1G
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
_setup_hugepages() {
|
|
||||||
MMDIR="/sys/kernel/mm/hugepages/${1}"
|
|
||||||
PAGES=${2}
|
|
||||||
|
|
||||||
if [ "$PAGES" != "" ]; then
|
|
||||||
if [ "$PAGES" -gt 0 ]; then
|
|
||||||
if [ -d "$MMDIR" -a -w "$MMDIR/nr_hugepages" ]; then
|
|
||||||
# increases the chance to allocate enough huge pages
|
|
||||||
# configurable, since it comes at a perf penality
|
|
||||||
if [ "$DROPCACHE_BEFORE_HP_ALLOC" = "1" ]; then
|
|
||||||
echo 3 > /proc/sys/vm/drop_caches
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "$PAGES" > "$MMDIR/nr_hugepages"
|
|
||||||
|
|
||||||
GOTPAGES=$(cat "$MMDIR/nr_hugepages")
|
|
||||||
if [ "$GOTPAGES" -lt "$PAGES" ]; then
|
|
||||||
echo "WARNING: could not allocate $PAGES at " \
|
|
||||||
"$MMDIR/nr_hugepages (only got $GOTPAGES)."
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
echo "WARNING: $MMDIR/nr_hugepages not found/writable"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
#
|
|
||||||
# Reserve a certain amount of hugepages (defined in /etc/dpdk.conf)
|
|
||||||
#
|
|
||||||
setup_hugepages() {
|
|
||||||
if [ ! -r /etc/dpdk/dpdk.conf ]; then
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
. /etc/dpdk/dpdk.conf
|
|
||||||
|
|
||||||
_setup_hugepages "hugepages-2048kB" "$NR_2M_PAGES"
|
|
||||||
_setup_hugepages "hugepages-1048576kB" "$NR_1G_PAGES"
|
|
||||||
|
|
||||||
# dpdk uses 2*#hugepages mappings, increase for huge systems LP #1507921
|
|
||||||
if [ -d /sys/kernel/mm/hugepages ]; then
|
|
||||||
max_map_count=$(awk -v pad=65530 '{tot+=$1}END{print tot*2+pad}' \
|
|
||||||
/sys/kernel/mm/hugepages/hugepages-*/nr_hugepages)
|
|
||||||
sysctl -q vm.max_map_count="${max_map_count:-65530}"
|
|
||||||
fi
|
|
||||||
|
|
||||||
return 0
|
|
||||||
}
|
|
||||||
|
|
||||||
#
|
|
||||||
# Allow NICs to be automatically bound to DPDK compatible drivers on boot.
|
|
||||||
#
|
|
||||||
bind_interfaces() {
|
|
||||||
if [ ! -r "$DPDK_INTERF" ]; then
|
|
||||||
return 0
|
|
||||||
fi
|
|
||||||
grep -v '^[ \t]*#' "$DPDK_INTERF" | while read BUS ID MOD; do
|
|
||||||
if [ "$BUS" = "" -o "$ID" = "" -o "$MOD" = "" ]; then
|
|
||||||
echo "WARNING: incomplete spec in $DPDK_INTERF" \
|
|
||||||
" - BUS '$BUS' ID '$ID' MOD '$MOD'"
|
|
||||||
continue
|
|
||||||
fi
|
|
||||||
if [ "$BUS" != "pci" ]; then
|
|
||||||
echo "WARNING: incompatible bus '$BUS' in $DPDK_INTERF"
|
|
||||||
continue
|
|
||||||
fi
|
|
||||||
|
|
||||||
SYSFSPATH="/sys/bus/$BUS/devices/$ID"
|
|
||||||
if [ ! -e "$SYSFSPATH" ]; then
|
|
||||||
echo "WARNING: invalid pci ID '$ID' in $DPDK_INTERF" \
|
|
||||||
" - '$SYSFSPATH' does not exist"
|
|
||||||
continue
|
|
||||||
fi
|
|
||||||
if [ -L "$SYSFSPATH/driver" ]; then
|
|
||||||
CUR=$(readlink "$SYSFSPATH/driver")
|
|
||||||
CUR=$(basename "$CUR")
|
|
||||||
else
|
|
||||||
# device existing, but currently unregistered
|
|
||||||
CUR=""
|
|
||||||
fi
|
|
||||||
if [ "$MOD" != "$CUR" ]; then
|
|
||||||
modprobe -q "$MOD" || true
|
|
||||||
# cloud img have no linux-image-extra initially (uip_pci_generic)
|
|
||||||
# so check if the module is available (loadable/built in)
|
|
||||||
if [ -e "/sys/bus/pci/drivers/${MOD}" ]; then
|
|
||||||
echo "Reassigning pci:$ID to $MOD"
|
|
||||||
$DPDK_BIND -b "$MOD" "$ID"
|
|
||||||
else
|
|
||||||
echo "Warning: failed assigning pci:$ID," \
|
|
||||||
" module $MOD not available"
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
echo "pci:$ID already assigned to $MOD"
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
case "$1" in
|
|
||||||
start)
|
|
||||||
mount_hugetlbfs
|
|
||||||
setup_hugepages
|
|
||||||
bind_interfaces
|
|
||||||
;;
|
|
||||||
stop)
|
|
||||||
;;
|
|
||||||
reload|force-reload)
|
|
||||||
setup_hugepages
|
|
||||||
bind_interfaces
|
|
||||||
;;
|
|
||||||
status)
|
|
||||||
$DPDK_BIND --status
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo "Usage: $0 {start|stop|reload|force-reload|status}"
|
|
||||||
exit 1
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
|
|
|
@ -1,3 +0,0 @@
|
||||||
export RTE_TARGET="$(uname -m)-default-linuxapp-gcc"
|
|
||||||
export RTE_SDK="/usr/share/dpdk/"
|
|
||||||
export RTE_INCLUDE="/usr/include/dpdk"
|
|
|
@ -1,54 +0,0 @@
|
||||||
#
|
|
||||||
# The number of 2M hugepages to reserve on system boot
|
|
||||||
#
|
|
||||||
# Default is 0
|
|
||||||
# To e.g. let it reserve 64x 2M Hugepages set:
|
|
||||||
# NR_2M_PAGES=64
|
|
||||||
|
|
||||||
#
|
|
||||||
# The number of 1G hugepages to reserve on system boot
|
|
||||||
#
|
|
||||||
# Default is 0
|
|
||||||
# To e.g. let it reserve 2x 1G Hugepages set:
|
|
||||||
# NR_1G_PAGES=2
|
|
||||||
|
|
||||||
#
|
|
||||||
# Dropping slab and pagecache can help to successfully allocate hugepages,
|
|
||||||
# especially later in the lifecycle of a system.
|
|
||||||
# This comes at the cost of loosing all slab and pagecache on (re)start
|
|
||||||
# of the dpdk service - therefore the default is off.
|
|
||||||
#
|
|
||||||
# Default is 0
|
|
||||||
# Set to 1 to enable it
|
|
||||||
#DROPCACHE_BEFORE_HP_ALLOC=0
|
|
||||||
|
|
||||||
# The DPDK library will use the first mounted hugetlbfs.
|
|
||||||
# The init scripts try to ensure there is at least one default hugetlbfs
|
|
||||||
# mountpoint on start.
|
|
||||||
# If you have multiple hugetlbfs mountpoints for a complex (e.g. specific numa
|
|
||||||
# policies) setup it should be controlled by the admin instead of this init
|
|
||||||
# script. In that case specific mountpoints can be provided as parameters to
|
|
||||||
# the DPDK library.
|
|
||||||
|
|
||||||
# Hardware may support other granularities of hugepages (like 4M). But the
|
|
||||||
# larger the hugepages the earlier those should be allocated.
|
|
||||||
# Note: the dpdk init scripts will report warnings, but not fail if they could
|
|
||||||
# not allocate the requested amount of hugepages.
|
|
||||||
# The more or the larger the hugepages to be allocated are, the more it is
|
|
||||||
# recommended to do the reservation as kernel commandline arguments.
|
|
||||||
# To do so edit /etc/default/grub: GRUB_CMDLINE_LINUX_DEFAULT
|
|
||||||
# and add [hugepagesz=xx] hugepages=yy ...
|
|
||||||
#
|
|
||||||
# Kernel commandline config:
|
|
||||||
# hugepagesz sets the size for the next hugepages reservation (default 2M)
|
|
||||||
# hugepages reserves the given number of hugepages of the size set before
|
|
||||||
#
|
|
||||||
# After modifying /etc/default/grub, the command "update-grub" has to be
|
|
||||||
# run in order to re-generate the grub config files. The new values will
|
|
||||||
# be used after next reboot.
|
|
||||||
#
|
|
||||||
# example:
|
|
||||||
# GRUB_CMDLINE_LINUX_DEFAULT="... hugepages=16 hugepagesz=1G hugepages=2"
|
|
||||||
#
|
|
||||||
# If the system supports it, this will reserve 16x 2M pages and 2x 1G pages.
|
|
||||||
#
|
|
|
@ -1,5 +0,0 @@
|
||||||
etc/dpdk
|
|
||||||
lib/dpdk
|
|
||||||
sbin
|
|
||||||
usr/bin
|
|
||||||
usr/lib/dpdk
|
|
|
@ -1,57 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
### BEGIN INIT INFO
|
|
||||||
# Provides: dpdk
|
|
||||||
# Required-Start: $local_fs
|
|
||||||
# Required-Stop: $local_fs
|
|
||||||
# Default-Start: S
|
|
||||||
# Default-Stop: 0 1 6
|
|
||||||
# Short-Description: start dpdk runtime environment
|
|
||||||
### END INIT INFO
|
|
||||||
|
|
||||||
set -e
|
|
||||||
|
|
||||||
PATH="/sbin:/bin:/usr/bin"
|
|
||||||
|
|
||||||
[ -d /lib/dpdk ] || exit 0
|
|
||||||
|
|
||||||
# Define LSB log_* functions.
|
|
||||||
# Depend on lsb-base (>= 3.2-14) to ensure that this file is present
|
|
||||||
# and status_of_proc is working.
|
|
||||||
. /lib/lsb/init-functions
|
|
||||||
|
|
||||||
error=0
|
|
||||||
case "$1" in
|
|
||||||
start)
|
|
||||||
log_action_begin_msg "Starting DPDK environment" "dpdk"
|
|
||||||
output=$(/lib/dpdk/dpdk-init start 2>&1) || error="$?"
|
|
||||||
if [ ! -z "$output" ]; then
|
|
||||||
echo "$output" | while read line; do
|
|
||||||
log_action_cont_msg "$line"
|
|
||||||
done
|
|
||||||
fi
|
|
||||||
log_action_end_msg $error
|
|
||||||
exit $error
|
|
||||||
;;
|
|
||||||
stop)
|
|
||||||
;;
|
|
||||||
restart|force-reload)
|
|
||||||
;;
|
|
||||||
status)
|
|
||||||
output=$(/lib/dpdk/dpdk-init --status 2>&1) || error="$?"
|
|
||||||
if [ ! -z "$output" ]; then
|
|
||||||
echo "$output" | while read line; do
|
|
||||||
log_action_cont_msg "$line"
|
|
||||||
done
|
|
||||||
fi
|
|
||||||
log_action_end_msg $error
|
|
||||||
exit $error
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo "Usage: $0 {start|stop|restart|force-reload|status}"
|
|
||||||
exit 1
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
exit 0
|
|
||||||
|
|
|
@ -1,2 +0,0 @@
|
||||||
debian/dpdk-init lib/dpdk/
|
|
||||||
debian/dpdk.conf etc/dpdk/
|
|
|
@ -1,13 +0,0 @@
|
||||||
#
|
|
||||||
# <bus> Currently only "pci" is supported
|
|
||||||
# <id> Device ID on the specified bus
|
|
||||||
# <driver> Driver to bind against (vfio-pci or uio_pci_generic)
|
|
||||||
#
|
|
||||||
# Be aware that the two dpdk compatible drivers uio_pci_generic and vfio-pci are
|
|
||||||
# part of linux-image-extra-<VERSION> package.
|
|
||||||
# This package is not always installed by default - for example in cloud-images.
|
|
||||||
# So please install it in case you run into missing module issues.
|
|
||||||
#
|
|
||||||
# <bus> <id> <driver>
|
|
||||||
# pci 0000:04:00.0 vfio-pci
|
|
||||||
# pci 0000:04:00.1 uio_pci_generic
|
|
|
@ -1,12 +0,0 @@
|
||||||
[Unit]
|
|
||||||
Description=DPDK runtime environment
|
|
||||||
DefaultDependencies=false
|
|
||||||
After=network-pre.target local-fs.target
|
|
||||||
|
|
||||||
[Service]
|
|
||||||
Type=oneshot
|
|
||||||
RemainAfterExit=yes
|
|
||||||
ExecStart=/lib/dpdk/dpdk-init start
|
|
||||||
|
|
||||||
[Install]
|
|
||||||
WantedBy=multi-user.target
|
|
|
@ -1 +0,0 @@
|
||||||
usr/include
|
|
|
@ -1 +0,0 @@
|
||||||
usr/lib
|
|
|
@ -1,580 +0,0 @@
|
||||||
libdpdk.so.0 libdpdk0 #MINVER#
|
|
||||||
* Build-Depends-Package: libdpdk-dev
|
|
||||||
DPDK_2.0@DPDK_2.0 2.2
|
|
||||||
DPDK_2.1@DPDK_2.1 2.2
|
|
||||||
DPDK_2.2@DPDK_2.2 2.2
|
|
||||||
__rte_panic@DPDK_2.0 2.2
|
|
||||||
_rte_eth_dev_callback_process@DPDK_2.2 2.2
|
|
||||||
cirbuf_add_buf_head@DPDK_2.0 2.2
|
|
||||||
cirbuf_add_buf_tail@DPDK_2.0 2.2
|
|
||||||
cirbuf_add_head@DPDK_2.0 2.2
|
|
||||||
cirbuf_add_head_safe@DPDK_2.0 2.2
|
|
||||||
cirbuf_add_tail@DPDK_2.0 2.2
|
|
||||||
cirbuf_add_tail_safe@DPDK_2.0 2.2
|
|
||||||
cirbuf_align_left@DPDK_2.0 2.2
|
|
||||||
cirbuf_align_right@DPDK_2.0 2.2
|
|
||||||
cirbuf_del_buf_head@DPDK_2.0 2.2
|
|
||||||
cirbuf_del_buf_tail@DPDK_2.0 2.2
|
|
||||||
cirbuf_del_head@DPDK_2.0 2.2
|
|
||||||
cirbuf_del_head_safe@DPDK_2.0 2.2
|
|
||||||
cirbuf_del_tail@DPDK_2.0 2.2
|
|
||||||
cirbuf_del_tail_safe@DPDK_2.0 2.2
|
|
||||||
cirbuf_get_buf_head@DPDK_2.0 2.2
|
|
||||||
cirbuf_get_buf_tail@DPDK_2.0 2.2
|
|
||||||
cirbuf_get_head@DPDK_2.0 2.2
|
|
||||||
cirbuf_get_tail@DPDK_2.0 2.2
|
|
||||||
cirbuf_init@DPDK_2.0 2.2
|
|
||||||
cmdline_complete@DPDK_2.0 2.2
|
|
||||||
cmdline_complete_get_elt_string@DPDK_2.0 2.2
|
|
||||||
cmdline_complete_get_nb_string@DPDK_2.0 2.2
|
|
||||||
cmdline_file_new@DPDK_2.0 2.2
|
|
||||||
cmdline_free@DPDK_2.0 2.2
|
|
||||||
cmdline_get_help_etheraddr@DPDK_2.0 2.2
|
|
||||||
cmdline_get_help_ipaddr@DPDK_2.0 2.2
|
|
||||||
cmdline_get_help_num@DPDK_2.0 2.2
|
|
||||||
cmdline_get_help_portlist@DPDK_2.0 2.2
|
|
||||||
cmdline_get_help_string@DPDK_2.0 2.2
|
|
||||||
cmdline_in@DPDK_2.0 2.2
|
|
||||||
cmdline_interact@DPDK_2.0 2.2
|
|
||||||
cmdline_isendoftoken@DPDK_2.0 2.2
|
|
||||||
cmdline_new@DPDK_2.0 2.2
|
|
||||||
cmdline_parse@DPDK_2.0 2.2
|
|
||||||
cmdline_parse_etheraddr@DPDK_2.0 2.2
|
|
||||||
cmdline_parse_ipaddr@DPDK_2.0 2.2
|
|
||||||
cmdline_parse_num@DPDK_2.0 2.2
|
|
||||||
cmdline_parse_portlist@DPDK_2.0 2.2
|
|
||||||
cmdline_parse_string@DPDK_2.0 2.2
|
|
||||||
cmdline_poll@DPDK_2.1 2.2
|
|
||||||
cmdline_printf@DPDK_2.0 2.2
|
|
||||||
cmdline_quit@DPDK_2.0 2.2
|
|
||||||
cmdline_set_prompt@DPDK_2.0 2.2
|
|
||||||
cmdline_stdin_exit@DPDK_2.0 2.2
|
|
||||||
cmdline_stdin_new@DPDK_2.0 2.2
|
|
||||||
cmdline_token_etheraddr_ops@DPDK_2.0 2.2
|
|
||||||
cmdline_token_ipaddr_ops@DPDK_2.0 2.2
|
|
||||||
cmdline_token_num_ops@DPDK_2.0 2.2
|
|
||||||
cmdline_token_portlist_ops@DPDK_2.0 2.2
|
|
||||||
cmdline_token_string_ops@DPDK_2.0 2.2
|
|
||||||
cmdline_write_char@DPDK_2.0 2.2
|
|
||||||
devargs_list@DPDK_2.0 2.2
|
|
||||||
eal_parse_sysfs_value@DPDK_2.0 2.2
|
|
||||||
eal_timer_source@DPDK_2.0 2.2
|
|
||||||
eth_dev_null_create@DPDK_2.2 2.2
|
|
||||||
lcore_config@DPDK_2.0 2.2
|
|
||||||
pci_device_list@DPDK_2.0 2.2
|
|
||||||
pci_driver_list@DPDK_2.0 2.2
|
|
||||||
per_lcore__lcore_id@DPDK_2.0 2.2
|
|
||||||
per_lcore__rte_errno@DPDK_2.0 2.2
|
|
||||||
rdline_add_history@DPDK_2.0 2.2
|
|
||||||
rdline_char_in@DPDK_2.0 2.2
|
|
||||||
rdline_clear_history@DPDK_2.0 2.2
|
|
||||||
rdline_get_buffer@DPDK_2.0 2.2
|
|
||||||
rdline_get_history_item@DPDK_2.0 2.2
|
|
||||||
rdline_init@DPDK_2.0 2.2
|
|
||||||
rdline_newline@DPDK_2.0 2.2
|
|
||||||
rdline_quit@DPDK_2.0 2.2
|
|
||||||
rdline_redisplay@DPDK_2.0 2.2
|
|
||||||
rdline_reset@DPDK_2.0 2.2
|
|
||||||
rdline_restart@DPDK_2.0 2.2
|
|
||||||
rdline_stop@DPDK_2.0 2.2
|
|
||||||
rte_acl_add_rules@DPDK_2.0 2.2
|
|
||||||
rte_acl_build@DPDK_2.0 2.2
|
|
||||||
rte_acl_classify@DPDK_2.0 2.2
|
|
||||||
rte_acl_classify_alg@DPDK_2.0 2.2
|
|
||||||
rte_acl_classify_scalar@DPDK_2.0 2.2
|
|
||||||
rte_acl_create@DPDK_2.0 2.2
|
|
||||||
rte_acl_dump@DPDK_2.0 2.2
|
|
||||||
rte_acl_find_existing@DPDK_2.0 2.2
|
|
||||||
rte_acl_free@DPDK_2.0 2.2
|
|
||||||
rte_acl_list_dump@DPDK_2.0 2.2
|
|
||||||
rte_acl_reset@DPDK_2.0 2.2
|
|
||||||
rte_acl_reset_rules@DPDK_2.0 2.2
|
|
||||||
rte_acl_set_ctx_classify@DPDK_2.0 2.2
|
|
||||||
rte_approx@DPDK_2.0 2.2
|
|
||||||
rte_calloc@DPDK_2.0 2.2
|
|
||||||
rte_calloc_socket@DPDK_2.0 2.2
|
|
||||||
rte_cfgfile_close@DPDK_2.0 2.2
|
|
||||||
rte_cfgfile_get_entry@DPDK_2.0 2.2
|
|
||||||
rte_cfgfile_has_entry@DPDK_2.0 2.2
|
|
||||||
rte_cfgfile_has_section@DPDK_2.0 2.2
|
|
||||||
rte_cfgfile_load@DPDK_2.0 2.2
|
|
||||||
rte_cfgfile_num_sections@DPDK_2.0 2.2
|
|
||||||
rte_cfgfile_section_entries@DPDK_2.0 2.2
|
|
||||||
rte_cfgfile_section_num_entries@DPDK_2.0 2.2
|
|
||||||
rte_cfgfile_sections@DPDK_2.0 2.2
|
|
||||||
rte_cpu_check_supported@DPDK_2.0 2.2
|
|
||||||
rte_cryptodev_callback_register@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_callback_unregister@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_close@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_configure@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_count@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_count_devtype@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_create_vdev@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_get_dev_id@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_info_get@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_pmd_allocate@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_pmd_callback_process@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_pmd_driver_register@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_pmd_release_device@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_pmd_virtual_dev_init@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_queue_pair_count@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_queue_pair_setup@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_queue_pair_start@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_queue_pair_stop@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_session_create@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_session_free@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_socket_id@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_start@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_stats_get@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_stats_reset@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_stop@DPDK_2.2 2.2
|
|
||||||
rte_cryptodevs@DPDK_2.2 2.2
|
|
||||||
rte_ctrlmbuf_init@DPDK_2.0 2.2
|
|
||||||
rte_cycles_vmware_tsc_map@DPDK_2.0 2.2
|
|
||||||
rte_delay_us@DPDK_2.0 2.2
|
|
||||||
rte_distributor_clear_returns@DPDK_2.0 2.2
|
|
||||||
rte_distributor_create@DPDK_2.0 2.2
|
|
||||||
rte_distributor_flush@DPDK_2.0 2.2
|
|
||||||
rte_distributor_get_pkt@DPDK_2.0 2.2
|
|
||||||
rte_distributor_poll_pkt@DPDK_2.0 2.2
|
|
||||||
rte_distributor_process@DPDK_2.0 2.2
|
|
||||||
rte_distributor_request_pkt@DPDK_2.0 2.2
|
|
||||||
rte_distributor_return_pkt@DPDK_2.0 2.2
|
|
||||||
rte_distributor_returned_pkts@DPDK_2.0 2.2
|
|
||||||
rte_dom0_mempool_create@DPDK_2.0 2.2
|
|
||||||
rte_dump_physmem_layout@DPDK_2.0 2.2
|
|
||||||
rte_dump_registers@DPDK_2.0 2.2
|
|
||||||
rte_dump_stack@DPDK_2.0 2.2
|
|
||||||
rte_dump_tailq@DPDK_2.0 2.2
|
|
||||||
rte_eal_alarm_cancel@DPDK_2.0 2.2
|
|
||||||
rte_eal_alarm_set@DPDK_2.0 2.2
|
|
||||||
rte_eal_dev_init@DPDK_2.0 2.2
|
|
||||||
rte_eal_devargs_add@DPDK_2.0 2.2
|
|
||||||
rte_eal_devargs_dump@DPDK_2.0 2.2
|
|
||||||
rte_eal_devargs_type_count@DPDK_2.0 2.2
|
|
||||||
rte_eal_driver_register@DPDK_2.0 2.2
|
|
||||||
rte_eal_driver_unregister@DPDK_2.0 2.2
|
|
||||||
rte_eal_get_configuration@DPDK_2.0 2.2
|
|
||||||
rte_eal_get_lcore_state@DPDK_2.0 2.2
|
|
||||||
rte_eal_get_physmem_layout@DPDK_2.0 2.2
|
|
||||||
rte_eal_get_physmem_size@DPDK_2.0 2.2
|
|
||||||
rte_eal_has_hugepages@DPDK_2.0 2.2
|
|
||||||
rte_eal_init@DPDK_2.0 2.2
|
|
||||||
rte_eal_iopl_init@DPDK_2.0 2.2
|
|
||||||
rte_eal_lcore_role@DPDK_2.0 2.2
|
|
||||||
rte_eal_mp_remote_launch@DPDK_2.0 2.2
|
|
||||||
rte_eal_mp_wait_lcore@DPDK_2.0 2.2
|
|
||||||
rte_eal_parse_devargs_str@DPDK_2.0 2.2
|
|
||||||
rte_eal_pci_detach@DPDK_2.1 2.2
|
|
||||||
rte_eal_pci_dump@DPDK_2.0 2.2
|
|
||||||
rte_eal_pci_probe@DPDK_2.0 2.2
|
|
||||||
rte_eal_pci_probe_one@DPDK_2.0 2.2
|
|
||||||
rte_eal_pci_read_config@DPDK_2.1 2.2
|
|
||||||
rte_eal_pci_register@DPDK_2.0 2.2
|
|
||||||
rte_eal_pci_scan@DPDK_2.0 2.2
|
|
||||||
rte_eal_pci_unregister@DPDK_2.0 2.2
|
|
||||||
rte_eal_pci_write_config@DPDK_2.1 2.2
|
|
||||||
rte_eal_process_type@DPDK_2.0 2.2
|
|
||||||
rte_eal_remote_launch@DPDK_2.0 2.2
|
|
||||||
rte_eal_tailq_lookup@DPDK_2.0 2.2
|
|
||||||
rte_eal_tailq_register@DPDK_2.0 2.2
|
|
||||||
rte_eal_vdev_init@DPDK_2.0 2.2
|
|
||||||
rte_eal_vdev_uninit@DPDK_2.0 2.2
|
|
||||||
rte_eal_wait_lcore@DPDK_2.0 2.2
|
|
||||||
rte_epoll_ctl@DPDK_2.1 2.2
|
|
||||||
rte_epoll_wait@DPDK_2.1 2.2
|
|
||||||
rte_eth_add_rx_callback@DPDK_2.2 2.2
|
|
||||||
rte_eth_add_tx_callback@DPDK_2.2 2.2
|
|
||||||
rte_eth_allmulticast_disable@DPDK_2.2 2.2
|
|
||||||
rte_eth_allmulticast_enable@DPDK_2.2 2.2
|
|
||||||
rte_eth_allmulticast_get@DPDK_2.2 2.2
|
|
||||||
rte_eth_bond_8023ad_conf_get@DPDK_2.0 2.2
|
|
||||||
rte_eth_bond_8023ad_setup@DPDK_2.0 2.2
|
|
||||||
rte_eth_bond_active_slaves_get@DPDK_2.0 2.2
|
|
||||||
rte_eth_bond_create@DPDK_2.0 2.2
|
|
||||||
rte_eth_bond_free@DPDK_2.1 2.2
|
|
||||||
rte_eth_bond_link_monitoring_set@DPDK_2.0 2.2
|
|
||||||
rte_eth_bond_mac_address_reset@DPDK_2.0 2.2
|
|
||||||
rte_eth_bond_mac_address_set@DPDK_2.0 2.2
|
|
||||||
rte_eth_bond_mode_get@DPDK_2.0 2.2
|
|
||||||
rte_eth_bond_mode_set@DPDK_2.0 2.2
|
|
||||||
rte_eth_bond_primary_get@DPDK_2.0 2.2
|
|
||||||
rte_eth_bond_primary_set@DPDK_2.0 2.2
|
|
||||||
rte_eth_bond_slave_add@DPDK_2.0 2.2
|
|
||||||
rte_eth_bond_slave_remove@DPDK_2.0 2.2
|
|
||||||
rte_eth_bond_slaves_get@DPDK_2.0 2.2
|
|
||||||
rte_eth_bond_xmit_policy_get@DPDK_2.0 2.2
|
|
||||||
rte_eth_bond_xmit_policy_set@DPDK_2.0 2.2
|
|
||||||
rte_eth_copy_pci_info@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_allocate@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_allocated@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_attach@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_callback_register@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_callback_unregister@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_close@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_configure@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_count@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_default_mac_addr_set@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_detach@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_filter_ctrl@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_filter_supported@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_flow_ctrl_get@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_flow_ctrl_set@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_get_dcb_info@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_get_eeprom@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_get_eeprom_length@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_get_mtu@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_get_reg_info@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_get_reg_length@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_get_vlan_offload@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_info_get@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_is_valid_port@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_mac_addr_add@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_mac_addr_remove@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_priority_flow_ctrl_set@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_release_port@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_rss_hash_conf_get@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_rss_hash_update@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_rss_reta_query@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_rss_reta_update@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_rx_intr_ctl@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_rx_intr_ctl_q@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_rx_intr_disable@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_rx_intr_enable@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_rx_queue_start@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_rx_queue_stop@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_set_eeprom@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_set_link_down@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_set_link_up@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_set_mc_addr_list@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_set_mtu@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_set_rx_queue_stats_mapping@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_set_tx_queue_stats_mapping@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_set_vf_rx@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_set_vf_rxmode@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_set_vf_tx@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_set_vf_vlan_filter@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_set_vlan_ether_type@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_set_vlan_offload@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_set_vlan_pvid@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_set_vlan_strip_on_queue@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_socket_id@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_start@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_stop@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_tx_queue_start@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_tx_queue_stop@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_uc_all_hash_table_set@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_uc_hash_table_set@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_udp_tunnel_add@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_udp_tunnel_delete@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_vlan_filter@DPDK_2.2 2.2
|
|
||||||
rte_eth_devices@DPDK_2.2 2.2
|
|
||||||
rte_eth_dma_zone_reserve@DPDK_2.2 2.2
|
|
||||||
rte_eth_driver_register@DPDK_2.2 2.2
|
|
||||||
rte_eth_from_ring@DPDK_2.2 2.2
|
|
||||||
rte_eth_from_rings@DPDK_2.0 2.2
|
|
||||||
rte_eth_led_off@DPDK_2.2 2.2
|
|
||||||
rte_eth_led_on@DPDK_2.2 2.2
|
|
||||||
rte_eth_link_get@DPDK_2.2 2.2
|
|
||||||
rte_eth_link_get_nowait@DPDK_2.2 2.2
|
|
||||||
rte_eth_macaddr_get@DPDK_2.2 2.2
|
|
||||||
rte_eth_mirror_rule_reset@DPDK_2.2 2.2
|
|
||||||
rte_eth_mirror_rule_set@DPDK_2.2 2.2
|
|
||||||
rte_eth_promiscuous_disable@DPDK_2.2 2.2
|
|
||||||
rte_eth_promiscuous_enable@DPDK_2.2 2.2
|
|
||||||
rte_eth_promiscuous_get@DPDK_2.2 2.2
|
|
||||||
rte_eth_remove_rx_callback@DPDK_2.2 2.2
|
|
||||||
rte_eth_remove_tx_callback@DPDK_2.2 2.2
|
|
||||||
rte_eth_rx_queue_info_get@DPDK_2.2 2.2
|
|
||||||
rte_eth_rx_queue_setup@DPDK_2.2 2.2
|
|
||||||
rte_eth_set_queue_rate_limit@DPDK_2.2 2.2
|
|
||||||
rte_eth_set_vf_rate_limit@DPDK_2.2 2.2
|
|
||||||
rte_eth_stats_get@DPDK_2.2 2.2
|
|
||||||
rte_eth_stats_reset@DPDK_2.2 2.2
|
|
||||||
rte_eth_timesync_adjust_time@DPDK_2.2 2.2
|
|
||||||
rte_eth_timesync_disable@DPDK_2.2 2.2
|
|
||||||
rte_eth_timesync_enable@DPDK_2.2 2.2
|
|
||||||
rte_eth_timesync_read_rx_timestamp@DPDK_2.2 2.2
|
|
||||||
rte_eth_timesync_read_time@DPDK_2.2 2.2
|
|
||||||
rte_eth_timesync_read_tx_timestamp@DPDK_2.2 2.2
|
|
||||||
rte_eth_timesync_write_time@DPDK_2.2 2.2
|
|
||||||
rte_eth_tx_queue_info_get@DPDK_2.2 2.2
|
|
||||||
rte_eth_tx_queue_setup@DPDK_2.2 2.2
|
|
||||||
rte_eth_xstats_get@DPDK_2.2 2.2
|
|
||||||
rte_eth_xstats_reset@DPDK_2.2 2.2
|
|
||||||
rte_exit@DPDK_2.0 2.2
|
|
||||||
rte_fbk_hash_create@DPDK_2.0 2.2
|
|
||||||
rte_fbk_hash_find_existing@DPDK_2.0 2.2
|
|
||||||
rte_fbk_hash_free@DPDK_2.0 2.2
|
|
||||||
rte_free@DPDK_2.0 2.2
|
|
||||||
rte_get_rx_ol_flag_name@DPDK_2.0 2.2
|
|
||||||
rte_get_tsc_hz@DPDK_2.0 2.2
|
|
||||||
rte_get_tx_ol_flag_name@DPDK_2.0 2.2
|
|
||||||
rte_hash_add_key@DPDK_2.0 2.2
|
|
||||||
rte_hash_add_key_data@DPDK_2.1 2.2
|
|
||||||
rte_hash_add_key_with_hash@DPDK_2.0 2.2
|
|
||||||
rte_hash_add_key_with_hash_data@DPDK_2.1 2.2
|
|
||||||
rte_hash_create@DPDK_2.0 2.2
|
|
||||||
rte_hash_del_key@DPDK_2.0 2.2
|
|
||||||
rte_hash_del_key_with_hash@DPDK_2.0 2.2
|
|
||||||
rte_hash_find_existing@DPDK_2.0 2.2
|
|
||||||
rte_hash_free@DPDK_2.0 2.2
|
|
||||||
rte_hash_hash@DPDK_2.0 2.2
|
|
||||||
rte_hash_iterate@DPDK_2.1 2.2
|
|
||||||
rte_hash_lookup@DPDK_2.0 2.2
|
|
||||||
rte_hash_lookup_bulk@DPDK_2.0 2.2
|
|
||||||
rte_hash_lookup_bulk_data@DPDK_2.1 2.2
|
|
||||||
rte_hash_lookup_data@DPDK_2.1 2.2
|
|
||||||
rte_hash_lookup_with_hash@DPDK_2.0 2.2
|
|
||||||
rte_hash_lookup_with_hash_data@DPDK_2.1 2.2
|
|
||||||
rte_hash_reset@DPDK_2.1 2.2
|
|
||||||
rte_hash_set_cmp_func@DPDK_2.2 2.2
|
|
||||||
rte_hexdump@DPDK_2.0 2.2
|
|
||||||
rte_intr_allow_others@DPDK_2.1 2.2
|
|
||||||
rte_intr_callback_register@DPDK_2.0 2.2
|
|
||||||
rte_intr_callback_unregister@DPDK_2.0 2.2
|
|
||||||
rte_intr_cap_multiple@DPDK_2.2 2.2
|
|
||||||
rte_intr_disable@DPDK_2.0 2.2
|
|
||||||
rte_intr_dp_is_en@DPDK_2.1 2.2
|
|
||||||
rte_intr_efd_disable@DPDK_2.1 2.2
|
|
||||||
rte_intr_efd_enable@DPDK_2.1 2.2
|
|
||||||
rte_intr_enable@DPDK_2.0 2.2
|
|
||||||
rte_intr_rx_ctl@DPDK_2.1 2.2
|
|
||||||
rte_intr_tls_epfd@DPDK_2.1 2.2
|
|
||||||
rte_ip_frag_free_death_row@DPDK_2.0 2.2
|
|
||||||
rte_ip_frag_table_create@DPDK_2.0 2.2
|
|
||||||
rte_ip_frag_table_statistics_dump@DPDK_2.0 2.2
|
|
||||||
rte_ipv4_frag_reassemble_packet@DPDK_2.0 2.2
|
|
||||||
rte_ipv4_fragment_packet@DPDK_2.0 2.2
|
|
||||||
rte_ipv6_frag_reassemble_packet@DPDK_2.0 2.2
|
|
||||||
rte_ipv6_fragment_packet@DPDK_2.0 2.2
|
|
||||||
rte_jobstats_context_finish@DPDK_2.0 2.2
|
|
||||||
rte_jobstats_context_init@DPDK_2.0 2.2
|
|
||||||
rte_jobstats_context_reset@DPDK_2.0 2.2
|
|
||||||
rte_jobstats_context_start@DPDK_2.0 2.2
|
|
||||||
rte_jobstats_finish@DPDK_2.0 2.2
|
|
||||||
rte_jobstats_init@DPDK_2.0 2.2
|
|
||||||
rte_jobstats_reset@DPDK_2.0 2.2
|
|
||||||
rte_jobstats_set_max@DPDK_2.0 2.2
|
|
||||||
rte_jobstats_set_min@DPDK_2.0 2.2
|
|
||||||
rte_jobstats_set_period@DPDK_2.0 2.2
|
|
||||||
rte_jobstats_set_target@DPDK_2.0 2.2
|
|
||||||
rte_jobstats_set_update_period_function@DPDK_2.0 2.2
|
|
||||||
rte_jobstats_start@DPDK_2.0 2.2
|
|
||||||
rte_keepalive_create@DPDK_2.2 2.2
|
|
||||||
rte_keepalive_dispatch_pings@DPDK_2.2 2.2
|
|
||||||
rte_keepalive_register_core@DPDK_2.2 2.2
|
|
||||||
rte_kni_alloc@DPDK_2.0 2.2
|
|
||||||
rte_kni_close@DPDK_2.0 2.2
|
|
||||||
rte_kni_get@DPDK_2.0 2.2
|
|
||||||
rte_kni_get_name@DPDK_2.0 2.2
|
|
||||||
rte_kni_handle_request@DPDK_2.0 2.2
|
|
||||||
rte_kni_init@DPDK_2.0 2.2
|
|
||||||
rte_kni_register_handlers@DPDK_2.0 2.2
|
|
||||||
rte_kni_release@DPDK_2.0 2.2
|
|
||||||
rte_kni_rx_burst@DPDK_2.0 2.2
|
|
||||||
rte_kni_tx_burst@DPDK_2.0 2.2
|
|
||||||
rte_kni_unregister_handlers@DPDK_2.0 2.2
|
|
||||||
rte_kvargs_count@DPDK_2.0 2.2
|
|
||||||
rte_kvargs_free@DPDK_2.0 2.2
|
|
||||||
rte_kvargs_parse@DPDK_2.0 2.2
|
|
||||||
rte_kvargs_process@DPDK_2.0 2.2
|
|
||||||
rte_log@DPDK_2.0 2.2
|
|
||||||
rte_log_add_in_history@DPDK_2.0 2.2
|
|
||||||
rte_log_cur_msg_loglevel@DPDK_2.0 2.2
|
|
||||||
rte_log_cur_msg_logtype@DPDK_2.0 2.2
|
|
||||||
rte_log_dump_history@DPDK_2.0 2.2
|
|
||||||
rte_log_set_history@DPDK_2.0 2.2
|
|
||||||
rte_logs@DPDK_2.0 2.2
|
|
||||||
rte_lpm6_add@DPDK_2.0 2.2
|
|
||||||
rte_lpm6_create@DPDK_2.0 2.2
|
|
||||||
rte_lpm6_delete@DPDK_2.0 2.2
|
|
||||||
rte_lpm6_delete_all@DPDK_2.0 2.2
|
|
||||||
rte_lpm6_delete_bulk_func@DPDK_2.0 2.2
|
|
||||||
rte_lpm6_find_existing@DPDK_2.0 2.2
|
|
||||||
rte_lpm6_free@DPDK_2.0 2.2
|
|
||||||
rte_lpm6_is_rule_present@DPDK_2.0 2.2
|
|
||||||
rte_lpm6_lookup@DPDK_2.0 2.2
|
|
||||||
rte_lpm6_lookup_bulk_func@DPDK_2.0 2.2
|
|
||||||
rte_lpm_add@DPDK_2.0 2.2
|
|
||||||
rte_lpm_create@DPDK_2.0 2.2
|
|
||||||
rte_lpm_delete@DPDK_2.0 2.2
|
|
||||||
rte_lpm_delete_all@DPDK_2.0 2.2
|
|
||||||
rte_lpm_find_existing@DPDK_2.0 2.2
|
|
||||||
rte_lpm_free@DPDK_2.0 2.2
|
|
||||||
rte_lpm_is_rule_present@DPDK_2.0 2.2
|
|
||||||
rte_malloc@DPDK_2.0 2.2
|
|
||||||
rte_malloc_dump_stats@DPDK_2.0 2.2
|
|
||||||
rte_malloc_get_socket_stats@DPDK_2.0 2.2
|
|
||||||
rte_malloc_set_limit@DPDK_2.0 2.2
|
|
||||||
rte_malloc_socket@DPDK_2.0 2.2
|
|
||||||
rte_malloc_validate@DPDK_2.0 2.2
|
|
||||||
rte_malloc_virt2phy@DPDK_2.0 2.2
|
|
||||||
rte_mbuf_sanity_check@DPDK_2.0 2.2
|
|
||||||
rte_mem_lock_page@DPDK_2.0 2.2
|
|
||||||
rte_mem_virt2phy@DPDK_2.0 2.2
|
|
||||||
rte_memdump@DPDK_2.0 2.2
|
|
||||||
rte_memory_get_nchannel@DPDK_2.0 2.2
|
|
||||||
rte_memory_get_nrank@DPDK_2.0 2.2
|
|
||||||
rte_mempool_audit@DPDK_2.0 2.2
|
|
||||||
rte_mempool_calc_obj_size@DPDK_2.0 2.2
|
|
||||||
rte_mempool_count@DPDK_2.0 2.2
|
|
||||||
rte_mempool_create@DPDK_2.0 2.2
|
|
||||||
rte_mempool_dump@DPDK_2.0 2.2
|
|
||||||
rte_mempool_gntalloc_create@DPDK_2.0 2.2
|
|
||||||
rte_mempool_list_dump@DPDK_2.0 2.2
|
|
||||||
rte_mempool_lookup@DPDK_2.0 2.2
|
|
||||||
rte_mempool_obj_iter@DPDK_2.0 2.2
|
|
||||||
rte_mempool_walk@DPDK_2.0 2.2
|
|
||||||
rte_mempool_xmem_create@DPDK_2.0 2.2
|
|
||||||
rte_mempool_xmem_size@DPDK_2.0 2.2
|
|
||||||
rte_mempool_xmem_usage@DPDK_2.0 2.2
|
|
||||||
rte_memzone_dump@DPDK_2.0 2.2
|
|
||||||
rte_memzone_free@DPDK_2.1 2.2
|
|
||||||
rte_memzone_lookup@DPDK_2.0 2.2
|
|
||||||
rte_memzone_reserve@DPDK_2.0 2.2
|
|
||||||
rte_memzone_reserve_aligned@DPDK_2.0 2.2
|
|
||||||
rte_memzone_reserve_bounded@DPDK_2.0 2.2
|
|
||||||
rte_memzone_walk@DPDK_2.0 2.2
|
|
||||||
rte_meter_srtcm_config@DPDK_2.0 2.2
|
|
||||||
rte_meter_trtcm_config@DPDK_2.0 2.2
|
|
||||||
rte_openlog_stream@DPDK_2.0 2.2
|
|
||||||
rte_pipeline_check@DPDK_2.0 2.2
|
|
||||||
rte_pipeline_create@DPDK_2.0 2.2
|
|
||||||
rte_pipeline_flush@DPDK_2.0 2.2
|
|
||||||
rte_pipeline_free@DPDK_2.0 2.2
|
|
||||||
rte_pipeline_port_in_connect_to_table@DPDK_2.0 2.2
|
|
||||||
rte_pipeline_port_in_create@DPDK_2.0 2.2
|
|
||||||
rte_pipeline_port_in_disable@DPDK_2.0 2.2
|
|
||||||
rte_pipeline_port_in_enable@DPDK_2.0 2.2
|
|
||||||
rte_pipeline_port_in_stats_read@DPDK_2.1 2.2
|
|
||||||
rte_pipeline_port_out_create@DPDK_2.0 2.2
|
|
||||||
rte_pipeline_port_out_packet_insert@DPDK_2.0 2.2
|
|
||||||
rte_pipeline_port_out_stats_read@DPDK_2.1 2.2
|
|
||||||
rte_pipeline_run@DPDK_2.0 2.2
|
|
||||||
rte_pipeline_table_create@DPDK_2.0 2.2
|
|
||||||
rte_pipeline_table_default_entry_add@DPDK_2.0 2.2
|
|
||||||
rte_pipeline_table_default_entry_delete@DPDK_2.0 2.2
|
|
||||||
rte_pipeline_table_entry_add@DPDK_2.0 2.2
|
|
||||||
rte_pipeline_table_entry_add_bulk@DPDK_2.2 2.2
|
|
||||||
rte_pipeline_table_entry_delete@DPDK_2.0 2.2
|
|
||||||
rte_pipeline_table_entry_delete_bulk@DPDK_2.2 2.2
|
|
||||||
rte_pipeline_table_stats_read@DPDK_2.1 2.2
|
|
||||||
rte_pktmbuf_dump@DPDK_2.0 2.2
|
|
||||||
rte_pktmbuf_init@DPDK_2.0 2.2
|
|
||||||
rte_pktmbuf_offload_pool_create@DPDK_2.2 2.2
|
|
||||||
rte_pktmbuf_pool_create@DPDK_2.1 2.2
|
|
||||||
rte_pktmbuf_pool_init@DPDK_2.0 2.2
|
|
||||||
rte_pmd_af_packet_devinit@DPDK_2.0 2.2
|
|
||||||
rte_port_ethdev_reader_ops@DPDK_2.0 2.2
|
|
||||||
rte_port_ethdev_writer_nodrop_ops@DPDK_2.1 2.2
|
|
||||||
rte_port_ethdev_writer_ops@DPDK_2.0 2.2
|
|
||||||
rte_port_ring_multi_reader_ops@DPDK_2.2 2.2
|
|
||||||
rte_port_ring_multi_writer_nodrop_ops@DPDK_2.2 2.2
|
|
||||||
rte_port_ring_multi_writer_ops@DPDK_2.2 2.2
|
|
||||||
rte_port_ring_reader_ipv4_frag_ops@DPDK_2.0 2.2
|
|
||||||
rte_port_ring_reader_ipv6_frag_ops@DPDK_2.1 2.2
|
|
||||||
rte_port_ring_reader_ops@DPDK_2.0 2.2
|
|
||||||
rte_port_ring_writer_ipv4_ras_ops@DPDK_2.0 2.2
|
|
||||||
rte_port_ring_writer_ipv6_ras_ops@DPDK_2.1 2.2
|
|
||||||
rte_port_ring_writer_nodrop_ops@DPDK_2.1 2.2
|
|
||||||
rte_port_ring_writer_ops@DPDK_2.0 2.2
|
|
||||||
rte_port_sched_reader_ops@DPDK_2.0 2.2
|
|
||||||
rte_port_sched_writer_ops@DPDK_2.0 2.2
|
|
||||||
rte_port_sink_ops@DPDK_2.0 2.2
|
|
||||||
rte_port_source_ops@DPDK_2.0 2.2
|
|
||||||
rte_power_exit@DPDK_2.0 2.2
|
|
||||||
rte_power_freq_down@DPDK_2.0 2.2
|
|
||||||
rte_power_freq_max@DPDK_2.0 2.2
|
|
||||||
rte_power_freq_min@DPDK_2.0 2.2
|
|
||||||
rte_power_freq_up@DPDK_2.0 2.2
|
|
||||||
rte_power_freqs@DPDK_2.0 2.2
|
|
||||||
rte_power_get_env@DPDK_2.0 2.2
|
|
||||||
rte_power_get_freq@DPDK_2.0 2.2
|
|
||||||
rte_power_init@DPDK_2.0 2.2
|
|
||||||
rte_power_set_env@DPDK_2.0 2.2
|
|
||||||
rte_power_set_freq@DPDK_2.0 2.2
|
|
||||||
rte_power_unset_env@DPDK_2.0 2.2
|
|
||||||
rte_realloc@DPDK_2.0 2.2
|
|
||||||
rte_red_config_init@DPDK_2.0 2.2
|
|
||||||
rte_red_log2_1_minus_Wq@DPDK_2.0 2.2
|
|
||||||
rte_red_pow2_frac_inv@DPDK_2.0 2.2
|
|
||||||
rte_red_rand_seed@DPDK_2.0 2.2
|
|
||||||
rte_red_rand_val@DPDK_2.0 2.2
|
|
||||||
rte_red_rt_data_init@DPDK_2.0 2.2
|
|
||||||
rte_reorder_create@DPDK_2.0 2.2
|
|
||||||
rte_reorder_drain@DPDK_2.0 2.2
|
|
||||||
rte_reorder_find_existing@DPDK_2.0 2.2
|
|
||||||
rte_reorder_free@DPDK_2.0 2.2
|
|
||||||
rte_reorder_init@DPDK_2.0 2.2
|
|
||||||
rte_reorder_insert@DPDK_2.0 2.2
|
|
||||||
rte_reorder_reset@DPDK_2.0 2.2
|
|
||||||
rte_ring_create@DPDK_2.0 2.2
|
|
||||||
rte_ring_dump@DPDK_2.0 2.2
|
|
||||||
rte_ring_free@DPDK_2.2 2.2
|
|
||||||
rte_ring_get_memsize@DPDK_2.0 2.2
|
|
||||||
rte_ring_init@DPDK_2.0 2.2
|
|
||||||
rte_ring_list_dump@DPDK_2.0 2.2
|
|
||||||
rte_ring_lookup@DPDK_2.0 2.2
|
|
||||||
rte_ring_set_water_mark@DPDK_2.0 2.2
|
|
||||||
rte_sched_pipe_config@DPDK_2.0 2.2
|
|
||||||
rte_sched_port_config@DPDK_2.0 2.2
|
|
||||||
rte_sched_port_dequeue@DPDK_2.0 2.2
|
|
||||||
rte_sched_port_enqueue@DPDK_2.0 2.2
|
|
||||||
rte_sched_port_free@DPDK_2.0 2.2
|
|
||||||
rte_sched_port_get_memory_footprint@DPDK_2.0 2.2
|
|
||||||
rte_sched_port_pkt_read_color@DPDK_2.1 2.2
|
|
||||||
rte_sched_port_pkt_read_tree_path@DPDK_2.1 2.2
|
|
||||||
rte_sched_port_pkt_write@DPDK_2.1 2.2
|
|
||||||
rte_sched_queue_read_stats@DPDK_2.0 2.2
|
|
||||||
rte_sched_subport_config@DPDK_2.0 2.2
|
|
||||||
rte_sched_subport_read_stats@DPDK_2.0 2.2
|
|
||||||
rte_set_application_usage_hook@DPDK_2.0 2.2
|
|
||||||
rte_set_log_level@DPDK_2.0 2.2
|
|
||||||
rte_set_log_type@DPDK_2.0 2.2
|
|
||||||
rte_socket_id@DPDK_2.0 2.2
|
|
||||||
rte_strerror@DPDK_2.0 2.2
|
|
||||||
rte_strsplit@DPDK_2.0 2.2
|
|
||||||
rte_sys_gettid@DPDK_2.0 2.2
|
|
||||||
rte_table_acl_ops@DPDK_2.0 2.2
|
|
||||||
rte_table_array_ops@DPDK_2.0 2.2
|
|
||||||
rte_table_hash_ext_ops@DPDK_2.0 2.2
|
|
||||||
rte_table_hash_key16_ext_dosig_ops@DPDK_2.2 2.2
|
|
||||||
rte_table_hash_key16_ext_ops@DPDK_2.0 2.2
|
|
||||||
rte_table_hash_key16_lru_ops@DPDK_2.0 2.2
|
|
||||||
rte_table_hash_key32_ext_ops@DPDK_2.0 2.2
|
|
||||||
rte_table_hash_key32_lru_ops@DPDK_2.0 2.2
|
|
||||||
rte_table_hash_key8_ext_dosig_ops@DPDK_2.0 2.2
|
|
||||||
rte_table_hash_key8_ext_ops@DPDK_2.0 2.2
|
|
||||||
rte_table_hash_key8_lru_dosig_ops@DPDK_2.0 2.2
|
|
||||||
rte_table_hash_key8_lru_ops@DPDK_2.0 2.2
|
|
||||||
rte_table_hash_lru_ops@DPDK_2.0 2.2
|
|
||||||
rte_table_lpm_ipv6_ops@DPDK_2.0 2.2
|
|
||||||
rte_table_lpm_ops@DPDK_2.0 2.2
|
|
||||||
rte_table_stub_ops@DPDK_2.0 2.2
|
|
||||||
rte_thread_get_affinity@DPDK_2.0 2.2
|
|
||||||
rte_thread_set_affinity@DPDK_2.0 2.2
|
|
||||||
rte_timer_dump_stats@DPDK_2.0 2.2
|
|
||||||
rte_timer_init@DPDK_2.0 2.2
|
|
||||||
rte_timer_manage@DPDK_2.0 2.2
|
|
||||||
rte_timer_pending@DPDK_2.0 2.2
|
|
||||||
rte_timer_reset@DPDK_2.0 2.2
|
|
||||||
rte_timer_reset_sync@DPDK_2.0 2.2
|
|
||||||
rte_timer_stop@DPDK_2.0 2.2
|
|
||||||
rte_timer_stop_sync@DPDK_2.0 2.2
|
|
||||||
rte_timer_subsystem_init@DPDK_2.0 2.2
|
|
||||||
rte_vhost_dequeue_burst@DPDK_2.0 2.2
|
|
||||||
rte_vhost_driver_callback_register@DPDK_2.0 2.2
|
|
||||||
rte_vhost_driver_register@DPDK_2.0 2.2
|
|
||||||
rte_vhost_driver_session_start@DPDK_2.0 2.2
|
|
||||||
rte_vhost_driver_unregister@DPDK_2.1 2.2
|
|
||||||
rte_vhost_enable_guest_notification@DPDK_2.0 2.2
|
|
||||||
rte_vhost_enqueue_burst@DPDK_2.0 2.2
|
|
||||||
rte_vhost_feature_disable@DPDK_2.0 2.2
|
|
||||||
rte_vhost_feature_enable@DPDK_2.0 2.2
|
|
||||||
rte_vhost_feature_get@DPDK_2.0 2.2
|
|
||||||
rte_vlog@DPDK_2.0 2.2
|
|
||||||
rte_zmalloc@DPDK_2.0 2.2
|
|
||||||
rte_zmalloc_socket@DPDK_2.0 2.2
|
|
||||||
vt100_init@DPDK_2.0 2.2
|
|
||||||
vt100_parser@DPDK_2.0 2.2
|
|
|
@ -1,569 +0,0 @@
|
||||||
libdpdk.so.0 libdpdk0 #MINVER#
|
|
||||||
* Build-Depends-Package: libdpdk-dev
|
|
||||||
DPDK_2.0@DPDK_2.0 2.2
|
|
||||||
DPDK_2.1@DPDK_2.1 2.2
|
|
||||||
DPDK_2.2@DPDK_2.2 2.2
|
|
||||||
__rte_panic@DPDK_2.0 2.2
|
|
||||||
_rte_eth_dev_callback_process@DPDK_2.2 2.2
|
|
||||||
cirbuf_add_buf_head@DPDK_2.0 2.2
|
|
||||||
cirbuf_add_buf_tail@DPDK_2.0 2.2
|
|
||||||
cirbuf_add_head@DPDK_2.0 2.2
|
|
||||||
cirbuf_add_head_safe@DPDK_2.0 2.2
|
|
||||||
cirbuf_add_tail@DPDK_2.0 2.2
|
|
||||||
cirbuf_add_tail_safe@DPDK_2.0 2.2
|
|
||||||
cirbuf_align_left@DPDK_2.0 2.2
|
|
||||||
cirbuf_align_right@DPDK_2.0 2.2
|
|
||||||
cirbuf_del_buf_head@DPDK_2.0 2.2
|
|
||||||
cirbuf_del_buf_tail@DPDK_2.0 2.2
|
|
||||||
cirbuf_del_head@DPDK_2.0 2.2
|
|
||||||
cirbuf_del_head_safe@DPDK_2.0 2.2
|
|
||||||
cirbuf_del_tail@DPDK_2.0 2.2
|
|
||||||
cirbuf_del_tail_safe@DPDK_2.0 2.2
|
|
||||||
cirbuf_get_buf_head@DPDK_2.0 2.2
|
|
||||||
cirbuf_get_buf_tail@DPDK_2.0 2.2
|
|
||||||
cirbuf_get_head@DPDK_2.0 2.2
|
|
||||||
cirbuf_get_tail@DPDK_2.0 2.2
|
|
||||||
cirbuf_init@DPDK_2.0 2.2
|
|
||||||
cmdline_complete@DPDK_2.0 2.2
|
|
||||||
cmdline_complete_get_elt_string@DPDK_2.0 2.2
|
|
||||||
cmdline_complete_get_nb_string@DPDK_2.0 2.2
|
|
||||||
cmdline_file_new@DPDK_2.0 2.2
|
|
||||||
cmdline_free@DPDK_2.0 2.2
|
|
||||||
cmdline_get_help_etheraddr@DPDK_2.0 2.2
|
|
||||||
cmdline_get_help_ipaddr@DPDK_2.0 2.2
|
|
||||||
cmdline_get_help_num@DPDK_2.0 2.2
|
|
||||||
cmdline_get_help_portlist@DPDK_2.0 2.2
|
|
||||||
cmdline_get_help_string@DPDK_2.0 2.2
|
|
||||||
cmdline_in@DPDK_2.0 2.2
|
|
||||||
cmdline_interact@DPDK_2.0 2.2
|
|
||||||
cmdline_isendoftoken@DPDK_2.0 2.2
|
|
||||||
cmdline_new@DPDK_2.0 2.2
|
|
||||||
cmdline_parse@DPDK_2.0 2.2
|
|
||||||
cmdline_parse_etheraddr@DPDK_2.0 2.2
|
|
||||||
cmdline_parse_ipaddr@DPDK_2.0 2.2
|
|
||||||
cmdline_parse_num@DPDK_2.0 2.2
|
|
||||||
cmdline_parse_portlist@DPDK_2.0 2.2
|
|
||||||
cmdline_parse_string@DPDK_2.0 2.2
|
|
||||||
cmdline_poll@DPDK_2.1 2.2
|
|
||||||
cmdline_printf@DPDK_2.0 2.2
|
|
||||||
cmdline_quit@DPDK_2.0 2.2
|
|
||||||
cmdline_set_prompt@DPDK_2.0 2.2
|
|
||||||
cmdline_stdin_exit@DPDK_2.0 2.2
|
|
||||||
cmdline_stdin_new@DPDK_2.0 2.2
|
|
||||||
cmdline_token_etheraddr_ops@DPDK_2.0 2.2
|
|
||||||
cmdline_token_ipaddr_ops@DPDK_2.0 2.2
|
|
||||||
cmdline_token_num_ops@DPDK_2.0 2.2
|
|
||||||
cmdline_token_portlist_ops@DPDK_2.0 2.2
|
|
||||||
cmdline_token_string_ops@DPDK_2.0 2.2
|
|
||||||
cmdline_write_char@DPDK_2.0 2.2
|
|
||||||
devargs_list@DPDK_2.0 2.2
|
|
||||||
eal_parse_sysfs_value@DPDK_2.0 2.2
|
|
||||||
eal_timer_source@DPDK_2.0 2.2
|
|
||||||
eth_dev_null_create@DPDK_2.2 2.2
|
|
||||||
lcore_config@DPDK_2.0 2.2
|
|
||||||
pci_device_list@DPDK_2.0 2.2
|
|
||||||
pci_driver_list@DPDK_2.0 2.2
|
|
||||||
per_lcore__lcore_id@DPDK_2.0 2.2
|
|
||||||
per_lcore__rte_errno@DPDK_2.0 2.2
|
|
||||||
rdline_add_history@DPDK_2.0 2.2
|
|
||||||
rdline_char_in@DPDK_2.0 2.2
|
|
||||||
rdline_clear_history@DPDK_2.0 2.2
|
|
||||||
rdline_get_buffer@DPDK_2.0 2.2
|
|
||||||
rdline_get_history_item@DPDK_2.0 2.2
|
|
||||||
rdline_init@DPDK_2.0 2.2
|
|
||||||
rdline_newline@DPDK_2.0 2.2
|
|
||||||
rdline_quit@DPDK_2.0 2.2
|
|
||||||
rdline_redisplay@DPDK_2.0 2.2
|
|
||||||
rdline_reset@DPDK_2.0 2.2
|
|
||||||
rdline_restart@DPDK_2.0 2.2
|
|
||||||
rdline_stop@DPDK_2.0 2.2
|
|
||||||
rte_acl_add_rules@DPDK_2.0 2.2
|
|
||||||
rte_acl_build@DPDK_2.0 2.2
|
|
||||||
rte_acl_classify@DPDK_2.0 2.2
|
|
||||||
rte_acl_classify_alg@DPDK_2.0 2.2
|
|
||||||
rte_acl_classify_scalar@DPDK_2.0 2.2
|
|
||||||
rte_acl_create@DPDK_2.0 2.2
|
|
||||||
rte_acl_dump@DPDK_2.0 2.2
|
|
||||||
rte_acl_find_existing@DPDK_2.0 2.2
|
|
||||||
rte_acl_free@DPDK_2.0 2.2
|
|
||||||
rte_acl_list_dump@DPDK_2.0 2.2
|
|
||||||
rte_acl_reset@DPDK_2.0 2.2
|
|
||||||
rte_acl_reset_rules@DPDK_2.0 2.2
|
|
||||||
rte_acl_set_ctx_classify@DPDK_2.0 2.2
|
|
||||||
rte_approx@DPDK_2.0 2.2
|
|
||||||
rte_calloc@DPDK_2.0 2.2
|
|
||||||
rte_calloc_socket@DPDK_2.0 2.2
|
|
||||||
rte_cfgfile_close@DPDK_2.0 2.2
|
|
||||||
rte_cfgfile_get_entry@DPDK_2.0 2.2
|
|
||||||
rte_cfgfile_has_entry@DPDK_2.0 2.2
|
|
||||||
rte_cfgfile_has_section@DPDK_2.0 2.2
|
|
||||||
rte_cfgfile_load@DPDK_2.0 2.2
|
|
||||||
rte_cfgfile_num_sections@DPDK_2.0 2.2
|
|
||||||
rte_cfgfile_section_entries@DPDK_2.0 2.2
|
|
||||||
rte_cfgfile_section_num_entries@DPDK_2.0 2.2
|
|
||||||
rte_cfgfile_sections@DPDK_2.0 2.2
|
|
||||||
rte_cpu_check_supported@DPDK_2.0 2.2
|
|
||||||
rte_cryptodev_callback_register@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_callback_unregister@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_close@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_configure@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_count@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_count_devtype@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_create_vdev@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_get_dev_id@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_info_get@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_pmd_allocate@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_pmd_callback_process@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_pmd_driver_register@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_pmd_release_device@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_pmd_virtual_dev_init@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_queue_pair_count@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_queue_pair_setup@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_queue_pair_start@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_queue_pair_stop@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_session_create@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_session_free@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_socket_id@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_start@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_stats_get@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_stats_reset@DPDK_2.2 2.2
|
|
||||||
rte_cryptodev_stop@DPDK_2.2 2.2
|
|
||||||
rte_cryptodevs@DPDK_2.2 2.2
|
|
||||||
rte_ctrlmbuf_init@DPDK_2.0 2.2
|
|
||||||
rte_cycles_vmware_tsc_map@DPDK_2.0 2.2
|
|
||||||
rte_delay_us@DPDK_2.0 2.2
|
|
||||||
rte_distributor_clear_returns@DPDK_2.0 2.2
|
|
||||||
rte_distributor_create@DPDK_2.0 2.2
|
|
||||||
rte_distributor_flush@DPDK_2.0 2.2
|
|
||||||
rte_distributor_get_pkt@DPDK_2.0 2.2
|
|
||||||
rte_distributor_poll_pkt@DPDK_2.0 2.2
|
|
||||||
rte_distributor_process@DPDK_2.0 2.2
|
|
||||||
rte_distributor_request_pkt@DPDK_2.0 2.2
|
|
||||||
rte_distributor_return_pkt@DPDK_2.0 2.2
|
|
||||||
rte_distributor_returned_pkts@DPDK_2.0 2.2
|
|
||||||
rte_dom0_mempool_create@DPDK_2.0 2.2
|
|
||||||
rte_dump_physmem_layout@DPDK_2.0 2.2
|
|
||||||
rte_dump_registers@DPDK_2.0 2.2
|
|
||||||
rte_dump_stack@DPDK_2.0 2.2
|
|
||||||
rte_dump_tailq@DPDK_2.0 2.2
|
|
||||||
rte_eal_alarm_cancel@DPDK_2.0 2.2
|
|
||||||
rte_eal_alarm_set@DPDK_2.0 2.2
|
|
||||||
rte_eal_dev_init@DPDK_2.0 2.2
|
|
||||||
rte_eal_devargs_add@DPDK_2.0 2.2
|
|
||||||
rte_eal_devargs_dump@DPDK_2.0 2.2
|
|
||||||
rte_eal_devargs_type_count@DPDK_2.0 2.2
|
|
||||||
rte_eal_driver_register@DPDK_2.0 2.2
|
|
||||||
rte_eal_driver_unregister@DPDK_2.0 2.2
|
|
||||||
rte_eal_get_configuration@DPDK_2.0 2.2
|
|
||||||
rte_eal_get_lcore_state@DPDK_2.0 2.2
|
|
||||||
rte_eal_get_physmem_layout@DPDK_2.0 2.2
|
|
||||||
rte_eal_get_physmem_size@DPDK_2.0 2.2
|
|
||||||
rte_eal_has_hugepages@DPDK_2.0 2.2
|
|
||||||
rte_eal_init@DPDK_2.0 2.2
|
|
||||||
rte_eal_iopl_init@DPDK_2.0 2.2
|
|
||||||
rte_eal_lcore_role@DPDK_2.0 2.2
|
|
||||||
rte_eal_mp_remote_launch@DPDK_2.0 2.2
|
|
||||||
rte_eal_mp_wait_lcore@DPDK_2.0 2.2
|
|
||||||
rte_eal_parse_devargs_str@DPDK_2.0 2.2
|
|
||||||
rte_eal_pci_detach@DPDK_2.1 2.2
|
|
||||||
rte_eal_pci_dump@DPDK_2.0 2.2
|
|
||||||
rte_eal_pci_probe@DPDK_2.0 2.2
|
|
||||||
rte_eal_pci_probe_one@DPDK_2.0 2.2
|
|
||||||
rte_eal_pci_read_config@DPDK_2.1 2.2
|
|
||||||
rte_eal_pci_register@DPDK_2.0 2.2
|
|
||||||
rte_eal_pci_scan@DPDK_2.0 2.2
|
|
||||||
rte_eal_pci_unregister@DPDK_2.0 2.2
|
|
||||||
rte_eal_pci_write_config@DPDK_2.1 2.2
|
|
||||||
rte_eal_process_type@DPDK_2.0 2.2
|
|
||||||
rte_eal_remote_launch@DPDK_2.0 2.2
|
|
||||||
rte_eal_tailq_lookup@DPDK_2.0 2.2
|
|
||||||
rte_eal_tailq_register@DPDK_2.0 2.2
|
|
||||||
rte_eal_vdev_init@DPDK_2.0 2.2
|
|
||||||
rte_eal_vdev_uninit@DPDK_2.0 2.2
|
|
||||||
rte_eal_wait_lcore@DPDK_2.0 2.2
|
|
||||||
rte_epoll_ctl@DPDK_2.1 2.2
|
|
||||||
rte_epoll_wait@DPDK_2.1 2.2
|
|
||||||
rte_eth_add_rx_callback@DPDK_2.2 2.2
|
|
||||||
rte_eth_add_tx_callback@DPDK_2.2 2.2
|
|
||||||
rte_eth_allmulticast_disable@DPDK_2.2 2.2
|
|
||||||
rte_eth_allmulticast_enable@DPDK_2.2 2.2
|
|
||||||
rte_eth_allmulticast_get@DPDK_2.2 2.2
|
|
||||||
rte_eth_bond_8023ad_conf_get@DPDK_2.0 2.2
|
|
||||||
rte_eth_bond_8023ad_setup@DPDK_2.0 2.2
|
|
||||||
rte_eth_bond_active_slaves_get@DPDK_2.0 2.2
|
|
||||||
rte_eth_bond_create@DPDK_2.0 2.2
|
|
||||||
rte_eth_bond_free@DPDK_2.1 2.2
|
|
||||||
rte_eth_bond_link_monitoring_set@DPDK_2.0 2.2
|
|
||||||
rte_eth_bond_mac_address_reset@DPDK_2.0 2.2
|
|
||||||
rte_eth_bond_mac_address_set@DPDK_2.0 2.2
|
|
||||||
rte_eth_bond_mode_get@DPDK_2.0 2.2
|
|
||||||
rte_eth_bond_mode_set@DPDK_2.0 2.2
|
|
||||||
rte_eth_bond_primary_get@DPDK_2.0 2.2
|
|
||||||
rte_eth_bond_primary_set@DPDK_2.0 2.2
|
|
||||||
rte_eth_bond_slave_add@DPDK_2.0 2.2
|
|
||||||
rte_eth_bond_slave_remove@DPDK_2.0 2.2
|
|
||||||
rte_eth_bond_slaves_get@DPDK_2.0 2.2
|
|
||||||
rte_eth_bond_xmit_policy_get@DPDK_2.0 2.2
|
|
||||||
rte_eth_bond_xmit_policy_set@DPDK_2.0 2.2
|
|
||||||
rte_eth_copy_pci_info@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_allocate@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_allocated@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_attach@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_callback_register@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_callback_unregister@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_close@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_configure@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_count@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_default_mac_addr_set@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_detach@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_filter_ctrl@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_filter_supported@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_flow_ctrl_get@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_flow_ctrl_set@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_get_dcb_info@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_get_eeprom@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_get_eeprom_length@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_get_mtu@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_get_reg_info@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_get_reg_length@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_get_vlan_offload@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_info_get@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_is_valid_port@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_mac_addr_add@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_mac_addr_remove@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_priority_flow_ctrl_set@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_release_port@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_rss_hash_conf_get@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_rss_hash_update@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_rss_reta_query@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_rss_reta_update@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_rx_intr_ctl@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_rx_intr_ctl_q@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_rx_intr_disable@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_rx_intr_enable@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_rx_queue_start@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_rx_queue_stop@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_set_eeprom@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_set_link_down@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_set_link_up@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_set_mc_addr_list@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_set_mtu@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_set_rx_queue_stats_mapping@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_set_tx_queue_stats_mapping@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_set_vf_rx@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_set_vf_rxmode@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_set_vf_tx@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_set_vf_vlan_filter@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_set_vlan_ether_type@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_set_vlan_offload@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_set_vlan_pvid@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_set_vlan_strip_on_queue@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_socket_id@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_start@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_stop@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_tx_queue_start@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_tx_queue_stop@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_uc_all_hash_table_set@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_uc_hash_table_set@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_udp_tunnel_add@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_udp_tunnel_delete@DPDK_2.2 2.2
|
|
||||||
rte_eth_dev_vlan_filter@DPDK_2.2 2.2
|
|
||||||
rte_eth_devices@DPDK_2.2 2.2
|
|
||||||
rte_eth_dma_zone_reserve@DPDK_2.2 2.2
|
|
||||||
rte_eth_driver_register@DPDK_2.2 2.2
|
|
||||||
rte_eth_from_ring@DPDK_2.2 2.2
|
|
||||||
rte_eth_from_rings@DPDK_2.0 2.2
|
|
||||||
rte_eth_led_off@DPDK_2.2 2.2
|
|
||||||
rte_eth_led_on@DPDK_2.2 2.2
|
|
||||||
rte_eth_link_get@DPDK_2.2 2.2
|
|
||||||
rte_eth_link_get_nowait@DPDK_2.2 2.2
|
|
||||||
rte_eth_macaddr_get@DPDK_2.2 2.2
|
|
||||||
rte_eth_mirror_rule_reset@DPDK_2.2 2.2
|
|
||||||
rte_eth_mirror_rule_set@DPDK_2.2 2.2
|
|
||||||
rte_eth_promiscuous_disable@DPDK_2.2 2.2
|
|
||||||
rte_eth_promiscuous_enable@DPDK_2.2 2.2
|
|
||||||
rte_eth_promiscuous_get@DPDK_2.2 2.2
|
|
||||||
rte_eth_remove_rx_callback@DPDK_2.2 2.2
|
|
||||||
rte_eth_remove_tx_callback@DPDK_2.2 2.2
|
|
||||||
rte_eth_rx_queue_info_get@DPDK_2.2 2.2
|
|
||||||
rte_eth_rx_queue_setup@DPDK_2.2 2.2
|
|
||||||
rte_eth_set_queue_rate_limit@DPDK_2.2 2.2
|
|
||||||
rte_eth_set_vf_rate_limit@DPDK_2.2 2.2
|
|
||||||
rte_eth_stats_get@DPDK_2.2 2.2
|
|
||||||
rte_eth_stats_reset@DPDK_2.2 2.2
|
|
||||||
rte_eth_timesync_adjust_time@DPDK_2.2 2.2
|
|
||||||
rte_eth_timesync_disable@DPDK_2.2 2.2
|
|
||||||
rte_eth_timesync_enable@DPDK_2.2 2.2
|
|
||||||
rte_eth_timesync_read_rx_timestamp@DPDK_2.2 2.2
|
|
||||||
rte_eth_timesync_read_time@DPDK_2.2 2.2
|
|
||||||
rte_eth_timesync_read_tx_timestamp@DPDK_2.2 2.2
|
|
||||||
rte_eth_timesync_write_time@DPDK_2.2 2.2
|
|
||||||
rte_eth_tx_queue_info_get@DPDK_2.2 2.2
|
|
||||||
rte_eth_tx_queue_setup@DPDK_2.2 2.2
|
|
||||||
rte_eth_xstats_get@DPDK_2.2 2.2
|
|
||||||
rte_eth_xstats_reset@DPDK_2.2 2.2
|
|
||||||
rte_exit@DPDK_2.0 2.2
|
|
||||||
rte_fbk_hash_create@DPDK_2.0 2.2
|
|
||||||
rte_fbk_hash_find_existing@DPDK_2.0 2.2
|
|
||||||
rte_fbk_hash_free@DPDK_2.0 2.2
|
|
||||||
rte_free@DPDK_2.0 2.2
|
|
||||||
rte_get_rx_ol_flag_name@DPDK_2.0 2.2
|
|
||||||
rte_get_tsc_hz@DPDK_2.0 2.2
|
|
||||||
rte_get_tx_ol_flag_name@DPDK_2.0 2.2
|
|
||||||
rte_hash_add_key@DPDK_2.0 2.2
|
|
||||||
rte_hash_add_key_data@DPDK_2.1 2.2
|
|
||||||
rte_hash_add_key_with_hash@DPDK_2.0 2.2
|
|
||||||
rte_hash_add_key_with_hash_data@DPDK_2.1 2.2
|
|
||||||
rte_hash_create@DPDK_2.0 2.2
|
|
||||||
rte_hash_del_key@DPDK_2.0 2.2
|
|
||||||
rte_hash_del_key_with_hash@DPDK_2.0 2.2
|
|
||||||
rte_hash_find_existing@DPDK_2.0 2.2
|
|
||||||
rte_hash_free@DPDK_2.0 2.2
|
|
||||||
rte_hash_hash@DPDK_2.0 2.2
|
|
||||||
rte_hash_iterate@DPDK_2.1 2.2
|
|
||||||
rte_hash_lookup@DPDK_2.0 2.2
|
|
||||||
rte_hash_lookup_bulk@DPDK_2.0 2.2
|
|
||||||
rte_hash_lookup_bulk_data@DPDK_2.1 2.2
|
|
||||||
rte_hash_lookup_data@DPDK_2.1 2.2
|
|
||||||
rte_hash_lookup_with_hash@DPDK_2.0 2.2
|
|
||||||
rte_hash_lookup_with_hash_data@DPDK_2.1 2.2
|
|
||||||
rte_hash_reset@DPDK_2.1 2.2
|
|
||||||
rte_hash_set_cmp_func@DPDK_2.2 2.2
|
|
||||||
rte_hexdump@DPDK_2.0 2.2
|
|
||||||
rte_intr_allow_others@DPDK_2.1 2.2
|
|
||||||
rte_intr_callback_register@DPDK_2.0 2.2
|
|
||||||
rte_intr_callback_unregister@DPDK_2.0 2.2
|
|
||||||
rte_intr_cap_multiple@DPDK_2.2 2.2
|
|
||||||
rte_intr_disable@DPDK_2.0 2.2
|
|
||||||
rte_intr_dp_is_en@DPDK_2.1 2.2
|
|
||||||
rte_intr_efd_disable@DPDK_2.1 2.2
|
|
||||||
rte_intr_efd_enable@DPDK_2.1 2.2
|
|
||||||
rte_intr_enable@DPDK_2.0 2.2
|
|
||||||
rte_intr_rx_ctl@DPDK_2.1 2.2
|
|
||||||
rte_intr_tls_epfd@DPDK_2.1 2.2
|
|
||||||
rte_ip_frag_free_death_row@DPDK_2.0 2.2
|
|
||||||
rte_ip_frag_table_create@DPDK_2.0 2.2
|
|
||||||
rte_ip_frag_table_statistics_dump@DPDK_2.0 2.2
|
|
||||||
rte_ipv4_frag_reassemble_packet@DPDK_2.0 2.2
|
|
||||||
rte_ipv4_fragment_packet@DPDK_2.0 2.2
|
|
||||||
rte_ipv6_frag_reassemble_packet@DPDK_2.0 2.2
|
|
||||||
rte_ipv6_fragment_packet@DPDK_2.0 2.2
|
|
||||||
rte_jobstats_context_finish@DPDK_2.0 2.2
|
|
||||||
rte_jobstats_context_init@DPDK_2.0 2.2
|
|
||||||
rte_jobstats_context_reset@DPDK_2.0 2.2
|
|
||||||
rte_jobstats_context_start@DPDK_2.0 2.2
|
|
||||||
rte_jobstats_finish@DPDK_2.0 2.2
|
|
||||||
rte_jobstats_init@DPDK_2.0 2.2
|
|
||||||
rte_jobstats_reset@DPDK_2.0 2.2
|
|
||||||
rte_jobstats_set_max@DPDK_2.0 2.2
|
|
||||||
rte_jobstats_set_min@DPDK_2.0 2.2
|
|
||||||
rte_jobstats_set_period@DPDK_2.0 2.2
|
|
||||||
rte_jobstats_set_target@DPDK_2.0 2.2
|
|
||||||
rte_jobstats_set_update_period_function@DPDK_2.0 2.2
|
|
||||||
rte_jobstats_start@DPDK_2.0 2.2
|
|
||||||
rte_keepalive_create@DPDK_2.2 2.2
|
|
||||||
rte_keepalive_dispatch_pings@DPDK_2.2 2.2
|
|
||||||
rte_keepalive_register_core@DPDK_2.2 2.2
|
|
||||||
rte_kvargs_count@DPDK_2.0 2.2
|
|
||||||
rte_kvargs_free@DPDK_2.0 2.2
|
|
||||||
rte_kvargs_parse@DPDK_2.0 2.2
|
|
||||||
rte_kvargs_process@DPDK_2.0 2.2
|
|
||||||
rte_log@DPDK_2.0 2.2
|
|
||||||
rte_log_add_in_history@DPDK_2.0 2.2
|
|
||||||
rte_log_cur_msg_loglevel@DPDK_2.0 2.2
|
|
||||||
rte_log_cur_msg_logtype@DPDK_2.0 2.2
|
|
||||||
rte_log_dump_history@DPDK_2.0 2.2
|
|
||||||
rte_log_set_history@DPDK_2.0 2.2
|
|
||||||
rte_logs@DPDK_2.0 2.2
|
|
||||||
rte_lpm6_add@DPDK_2.0 2.2
|
|
||||||
rte_lpm6_create@DPDK_2.0 2.2
|
|
||||||
rte_lpm6_delete@DPDK_2.0 2.2
|
|
||||||
rte_lpm6_delete_all@DPDK_2.0 2.2
|
|
||||||
rte_lpm6_delete_bulk_func@DPDK_2.0 2.2
|
|
||||||
rte_lpm6_find_existing@DPDK_2.0 2.2
|
|
||||||
rte_lpm6_free@DPDK_2.0 2.2
|
|
||||||
rte_lpm6_is_rule_present@DPDK_2.0 2.2
|
|
||||||
rte_lpm6_lookup@DPDK_2.0 2.2
|
|
||||||
rte_lpm6_lookup_bulk_func@DPDK_2.0 2.2
|
|
||||||
rte_lpm_add@DPDK_2.0 2.2
|
|
||||||
rte_lpm_create@DPDK_2.0 2.2
|
|
||||||
rte_lpm_delete@DPDK_2.0 2.2
|
|
||||||
rte_lpm_delete_all@DPDK_2.0 2.2
|
|
||||||
rte_lpm_find_existing@DPDK_2.0 2.2
|
|
||||||
rte_lpm_free@DPDK_2.0 2.2
|
|
||||||
rte_lpm_is_rule_present@DPDK_2.0 2.2
|
|
||||||
rte_malloc@DPDK_2.0 2.2
|
|
||||||
rte_malloc_dump_stats@DPDK_2.0 2.2
|
|
||||||
rte_malloc_get_socket_stats@DPDK_2.0 2.2
|
|
||||||
rte_malloc_set_limit@DPDK_2.0 2.2
|
|
||||||
rte_malloc_socket@DPDK_2.0 2.2
|
|
||||||
rte_malloc_validate@DPDK_2.0 2.2
|
|
||||||
rte_malloc_virt2phy@DPDK_2.0 2.2
|
|
||||||
rte_mbuf_sanity_check@DPDK_2.0 2.2
|
|
||||||
rte_mem_lock_page@DPDK_2.0 2.2
|
|
||||||
rte_mem_virt2phy@DPDK_2.0 2.2
|
|
||||||
rte_memdump@DPDK_2.0 2.2
|
|
||||||
rte_memory_get_nchannel@DPDK_2.0 2.2
|
|
||||||
rte_memory_get_nrank@DPDK_2.0 2.2
|
|
||||||
rte_mempool_audit@DPDK_2.0 2.2
|
|
||||||
rte_mempool_calc_obj_size@DPDK_2.0 2.2
|
|
||||||
rte_mempool_count@DPDK_2.0 2.2
|
|
||||||
rte_mempool_create@DPDK_2.0 2.2
|
|
||||||
rte_mempool_dump@DPDK_2.0 2.2
|
|
||||||
rte_mempool_gntalloc_create@DPDK_2.0 2.2
|
|
||||||
rte_mempool_list_dump@DPDK_2.0 2.2
|
|
||||||
rte_mempool_lookup@DPDK_2.0 2.2
|
|
||||||
rte_mempool_obj_iter@DPDK_2.0 2.2
|
|
||||||
rte_mempool_walk@DPDK_2.0 2.2
|
|
||||||
rte_mempool_xmem_create@DPDK_2.0 2.2
|
|
||||||
rte_mempool_xmem_size@DPDK_2.0 2.2
|
|
||||||
rte_mempool_xmem_usage@DPDK_2.0 2.2
|
|
||||||
rte_memzone_dump@DPDK_2.0 2.2
|
|
||||||
rte_memzone_free@DPDK_2.1 2.2
|
|
||||||
rte_memzone_lookup@DPDK_2.0 2.2
|
|
||||||
rte_memzone_reserve@DPDK_2.0 2.2
|
|
||||||
rte_memzone_reserve_aligned@DPDK_2.0 2.2
|
|
||||||
rte_memzone_reserve_bounded@DPDK_2.0 2.2
|
|
||||||
rte_memzone_walk@DPDK_2.0 2.2
|
|
||||||
rte_meter_srtcm_config@DPDK_2.0 2.2
|
|
||||||
rte_meter_trtcm_config@DPDK_2.0 2.2
|
|
||||||
rte_openlog_stream@DPDK_2.0 2.2
|
|
||||||
rte_pipeline_check@DPDK_2.0 2.2
|
|
||||||
rte_pipeline_create@DPDK_2.0 2.2
|
|
||||||
rte_pipeline_flush@DPDK_2.0 2.2
|
|
||||||
rte_pipeline_free@DPDK_2.0 2.2
|
|
||||||
rte_pipeline_port_in_connect_to_table@DPDK_2.0 2.2
|
|
||||||
rte_pipeline_port_in_create@DPDK_2.0 2.2
|
|
||||||
rte_pipeline_port_in_disable@DPDK_2.0 2.2
|
|
||||||
rte_pipeline_port_in_enable@DPDK_2.0 2.2
|
|
||||||
rte_pipeline_port_in_stats_read@DPDK_2.1 2.2
|
|
||||||
rte_pipeline_port_out_create@DPDK_2.0 2.2
|
|
||||||
rte_pipeline_port_out_packet_insert@DPDK_2.0 2.2
|
|
||||||
rte_pipeline_port_out_stats_read@DPDK_2.1 2.2
|
|
||||||
rte_pipeline_run@DPDK_2.0 2.2
|
|
||||||
rte_pipeline_table_create@DPDK_2.0 2.2
|
|
||||||
rte_pipeline_table_default_entry_add@DPDK_2.0 2.2
|
|
||||||
rte_pipeline_table_default_entry_delete@DPDK_2.0 2.2
|
|
||||||
rte_pipeline_table_entry_add@DPDK_2.0 2.2
|
|
||||||
rte_pipeline_table_entry_add_bulk@DPDK_2.2 2.2
|
|
||||||
rte_pipeline_table_entry_delete@DPDK_2.0 2.2
|
|
||||||
rte_pipeline_table_entry_delete_bulk@DPDK_2.2 2.2
|
|
||||||
rte_pipeline_table_stats_read@DPDK_2.1 2.2
|
|
||||||
rte_pktmbuf_dump@DPDK_2.0 2.2
|
|
||||||
rte_pktmbuf_init@DPDK_2.0 2.2
|
|
||||||
rte_pktmbuf_offload_pool_create@DPDK_2.2 2.2
|
|
||||||
rte_pktmbuf_pool_create@DPDK_2.1 2.2
|
|
||||||
rte_pktmbuf_pool_init@DPDK_2.0 2.2
|
|
||||||
rte_pmd_af_packet_devinit@DPDK_2.0 2.2
|
|
||||||
rte_port_ethdev_reader_ops@DPDK_2.0 2.2
|
|
||||||
rte_port_ethdev_writer_nodrop_ops@DPDK_2.1 2.2
|
|
||||||
rte_port_ethdev_writer_ops@DPDK_2.0 2.2
|
|
||||||
rte_port_ring_multi_reader_ops@DPDK_2.2 2.2
|
|
||||||
rte_port_ring_multi_writer_nodrop_ops@DPDK_2.2 2.2
|
|
||||||
rte_port_ring_multi_writer_ops@DPDK_2.2 2.2
|
|
||||||
rte_port_ring_reader_ipv4_frag_ops@DPDK_2.0 2.2
|
|
||||||
rte_port_ring_reader_ipv6_frag_ops@DPDK_2.1 2.2
|
|
||||||
rte_port_ring_reader_ops@DPDK_2.0 2.2
|
|
||||||
rte_port_ring_writer_ipv4_ras_ops@DPDK_2.0 2.2
|
|
||||||
rte_port_ring_writer_ipv6_ras_ops@DPDK_2.1 2.2
|
|
||||||
rte_port_ring_writer_nodrop_ops@DPDK_2.1 2.2
|
|
||||||
rte_port_ring_writer_ops@DPDK_2.0 2.2
|
|
||||||
rte_port_sched_reader_ops@DPDK_2.0 2.2
|
|
||||||
rte_port_sched_writer_ops@DPDK_2.0 2.2
|
|
||||||
rte_port_sink_ops@DPDK_2.0 2.2
|
|
||||||
rte_port_source_ops@DPDK_2.0 2.2
|
|
||||||
rte_power_exit@DPDK_2.0 2.2
|
|
||||||
rte_power_freq_down@DPDK_2.0 2.2
|
|
||||||
rte_power_freq_max@DPDK_2.0 2.2
|
|
||||||
rte_power_freq_min@DPDK_2.0 2.2
|
|
||||||
rte_power_freq_up@DPDK_2.0 2.2
|
|
||||||
rte_power_freqs@DPDK_2.0 2.2
|
|
||||||
rte_power_get_env@DPDK_2.0 2.2
|
|
||||||
rte_power_get_freq@DPDK_2.0 2.2
|
|
||||||
rte_power_init@DPDK_2.0 2.2
|
|
||||||
rte_power_set_env@DPDK_2.0 2.2
|
|
||||||
rte_power_set_freq@DPDK_2.0 2.2
|
|
||||||
rte_power_unset_env@DPDK_2.0 2.2
|
|
||||||
rte_realloc@DPDK_2.0 2.2
|
|
||||||
rte_red_config_init@DPDK_2.0 2.2
|
|
||||||
rte_red_log2_1_minus_Wq@DPDK_2.0 2.2
|
|
||||||
rte_red_pow2_frac_inv@DPDK_2.0 2.2
|
|
||||||
rte_red_rand_seed@DPDK_2.0 2.2
|
|
||||||
rte_red_rand_val@DPDK_2.0 2.2
|
|
||||||
rte_red_rt_data_init@DPDK_2.0 2.2
|
|
||||||
rte_reorder_create@DPDK_2.0 2.2
|
|
||||||
rte_reorder_drain@DPDK_2.0 2.2
|
|
||||||
rte_reorder_find_existing@DPDK_2.0 2.2
|
|
||||||
rte_reorder_free@DPDK_2.0 2.2
|
|
||||||
rte_reorder_init@DPDK_2.0 2.2
|
|
||||||
rte_reorder_insert@DPDK_2.0 2.2
|
|
||||||
rte_reorder_reset@DPDK_2.0 2.2
|
|
||||||
rte_ring_create@DPDK_2.0 2.2
|
|
||||||
rte_ring_dump@DPDK_2.0 2.2
|
|
||||||
rte_ring_free@DPDK_2.2 2.2
|
|
||||||
rte_ring_get_memsize@DPDK_2.0 2.2
|
|
||||||
rte_ring_init@DPDK_2.0 2.2
|
|
||||||
rte_ring_list_dump@DPDK_2.0 2.2
|
|
||||||
rte_ring_lookup@DPDK_2.0 2.2
|
|
||||||
rte_ring_set_water_mark@DPDK_2.0 2.2
|
|
||||||
rte_sched_pipe_config@DPDK_2.0 2.2
|
|
||||||
rte_sched_port_config@DPDK_2.0 2.2
|
|
||||||
rte_sched_port_dequeue@DPDK_2.0 2.2
|
|
||||||
rte_sched_port_enqueue@DPDK_2.0 2.2
|
|
||||||
rte_sched_port_free@DPDK_2.0 2.2
|
|
||||||
rte_sched_port_get_memory_footprint@DPDK_2.0 2.2
|
|
||||||
rte_sched_port_pkt_read_color@DPDK_2.1 2.2
|
|
||||||
rte_sched_port_pkt_read_tree_path@DPDK_2.1 2.2
|
|
||||||
rte_sched_port_pkt_write@DPDK_2.1 2.2
|
|
||||||
rte_sched_queue_read_stats@DPDK_2.0 2.2
|
|
||||||
rte_sched_subport_config@DPDK_2.0 2.2
|
|
||||||
rte_sched_subport_read_stats@DPDK_2.0 2.2
|
|
||||||
rte_set_application_usage_hook@DPDK_2.0 2.2
|
|
||||||
rte_set_log_level@DPDK_2.0 2.2
|
|
||||||
rte_set_log_type@DPDK_2.0 2.2
|
|
||||||
rte_socket_id@DPDK_2.0 2.2
|
|
||||||
rte_strerror@DPDK_2.0 2.2
|
|
||||||
rte_strsplit@DPDK_2.0 2.2
|
|
||||||
rte_sys_gettid@DPDK_2.0 2.2
|
|
||||||
rte_table_acl_ops@DPDK_2.0 2.2
|
|
||||||
rte_table_array_ops@DPDK_2.0 2.2
|
|
||||||
rte_table_hash_ext_ops@DPDK_2.0 2.2
|
|
||||||
rte_table_hash_key16_ext_dosig_ops@DPDK_2.2 2.2
|
|
||||||
rte_table_hash_key16_ext_ops@DPDK_2.0 2.2
|
|
||||||
rte_table_hash_key16_lru_ops@DPDK_2.0 2.2
|
|
||||||
rte_table_hash_key32_ext_ops@DPDK_2.0 2.2
|
|
||||||
rte_table_hash_key32_lru_ops@DPDK_2.0 2.2
|
|
||||||
rte_table_hash_key8_ext_dosig_ops@DPDK_2.0 2.2
|
|
||||||
rte_table_hash_key8_ext_ops@DPDK_2.0 2.2
|
|
||||||
rte_table_hash_key8_lru_dosig_ops@DPDK_2.0 2.2
|
|
||||||
rte_table_hash_key8_lru_ops@DPDK_2.0 2.2
|
|
||||||
rte_table_hash_lru_ops@DPDK_2.0 2.2
|
|
||||||
rte_table_lpm_ipv6_ops@DPDK_2.0 2.2
|
|
||||||
rte_table_lpm_ops@DPDK_2.0 2.2
|
|
||||||
rte_table_stub_ops@DPDK_2.0 2.2
|
|
||||||
rte_thread_get_affinity@DPDK_2.0 2.2
|
|
||||||
rte_thread_set_affinity@DPDK_2.0 2.2
|
|
||||||
rte_timer_dump_stats@DPDK_2.0 2.2
|
|
||||||
rte_timer_init@DPDK_2.0 2.2
|
|
||||||
rte_timer_manage@DPDK_2.0 2.2
|
|
||||||
rte_timer_pending@DPDK_2.0 2.2
|
|
||||||
rte_timer_reset@DPDK_2.0 2.2
|
|
||||||
rte_timer_reset_sync@DPDK_2.0 2.2
|
|
||||||
rte_timer_stop@DPDK_2.0 2.2
|
|
||||||
rte_timer_stop_sync@DPDK_2.0 2.2
|
|
||||||
rte_timer_subsystem_init@DPDK_2.0 2.2
|
|
||||||
rte_vhost_dequeue_burst@DPDK_2.0 2.2
|
|
||||||
rte_vhost_driver_callback_register@DPDK_2.0 2.2
|
|
||||||
rte_vhost_driver_register@DPDK_2.0 2.2
|
|
||||||
rte_vhost_driver_session_start@DPDK_2.0 2.2
|
|
||||||
rte_vhost_driver_unregister@DPDK_2.1 2.2
|
|
||||||
rte_vhost_enable_guest_notification@DPDK_2.0 2.2
|
|
||||||
rte_vhost_enqueue_burst@DPDK_2.0 2.2
|
|
||||||
rte_vhost_feature_disable@DPDK_2.0 2.2
|
|
||||||
rte_vhost_feature_enable@DPDK_2.0 2.2
|
|
||||||
rte_vhost_feature_get@DPDK_2.0 2.2
|
|
||||||
rte_vlog@DPDK_2.0 2.2
|
|
||||||
rte_zmalloc@DPDK_2.0 2.2
|
|
||||||
rte_zmalloc_socket@DPDK_2.0 2.2
|
|
||||||
vt100_init@DPDK_2.0 2.2
|
|
||||||
vt100_parser@DPDK_2.0 2.2
|
|
|
@ -1,155 +0,0 @@
|
||||||
#!/usr/bin/make -f
|
|
||||||
# See debhelper(7) (uncomment to enable)
|
|
||||||
# output every command that modifies files on the build system.
|
|
||||||
#export DH_VERBOSE = 1
|
|
||||||
|
|
||||||
# see EXAMPLES in dpkg-buildflags(1) and read /usr/share/dpkg/*
|
|
||||||
DPKG_EXPORT_BUILDFLAGS = 1
|
|
||||||
include /usr/share/dpkg/default.mk
|
|
||||||
|
|
||||||
DEB_HOST_GNU_CPU := $(shell dpkg-architecture -qDEB_HOST_GNU_CPU)
|
|
||||||
|
|
||||||
# see FEATURE AREAS in dpkg-buildflags(1)
|
|
||||||
export DEB_BUILD_MAINT_OPTIONS = hardening=+all
|
|
||||||
|
|
||||||
# build with debug symbols, dh_strip will create -dgbsyms packages by that
|
|
||||||
export EXTRA_CFLAGS = -g -march=corei7-avx -mno-movbe -mno-abm -mno-fma -mno-bmi -mno-bmi2 -mno-avx2 -mno-lzcnt -mtune=corei7-avx
|
|
||||||
|
|
||||||
# see ENVIRONMENT in dpkg-buildflags(1)
|
|
||||||
# package maintainers to append CFLAGS
|
|
||||||
#export DEB_CFLAGS_MAINT_APPEND = -Wall -pedantic
|
|
||||||
# package maintainers to append LDFLAGS
|
|
||||||
#export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed
|
|
||||||
|
|
||||||
DPDK_CONFIG = "$(DEB_HOST_GNU_CPU)-native-linuxapp-gcc"
|
|
||||||
DPDK_STATIC_DIR = "debian/build/static-root"
|
|
||||||
DPDK_SHARED_DIR = "debian/build/shared-root"
|
|
||||||
|
|
||||||
clean:
|
|
||||||
dh_testdir
|
|
||||||
rm -rf debian/build debian/tmp
|
|
||||||
dh_clean
|
|
||||||
|
|
||||||
build-config:
|
|
||||||
dh_testdir
|
|
||||||
sed -i '/RTE_MACHINE_CPUFLAG_AVX2/,+13 s/^/#/' lib/librte_acl/Makefile
|
|
||||||
sed -i '/__AVX2__/,+2 s/^/#/' mk/rte.cpuflags.mk
|
|
||||||
$(MAKE) O=$(DPDK_STATIC_DIR) T=$(DPDK_CONFIG) config
|
|
||||||
sed -ri 's,(RTE_MACHINE=).*,\1default,' \
|
|
||||||
$(DPDK_STATIC_DIR)/.config
|
|
||||||
|
|
||||||
build-indep: build-config
|
|
||||||
dh_testdir
|
|
||||||
$(MAKE) O=$(DPDK_STATIC_DIR) doc-api-html doc-guides-html
|
|
||||||
|
|
||||||
build-arch: build-config
|
|
||||||
dh_testdir
|
|
||||||
echo "CPUFLAGS_LIST := -DRTE_COMPILE_TIME_CPUFLAGS=" > mk/rte.cpuflags.mk
|
|
||||||
$(MAKE) O=$(DPDK_STATIC_DIR) build
|
|
||||||
# Unfortunately the decision about having static or shared libraries is
|
|
||||||
# made for the whole build, which then produces only .a or .so files
|
|
||||||
# (but not both).
|
|
||||||
# And the target layout for target selection has no field for the
|
|
||||||
# type of library.
|
|
||||||
# Right now I hack this by doing a second build which only differs in
|
|
||||||
# the selection of shared libs.
|
|
||||||
# Shared libs should be default, so the previous static build is only
|
|
||||||
# used to get static libraries.
|
|
||||||
cp -a $(DPDK_STATIC_DIR) $(DPDK_SHARED_DIR)
|
|
||||||
sed -ri 's,(RTE_BUILD_SHARED_LIB=).*,\1y,' \
|
|
||||||
$(DPDK_SHARED_DIR)/.config
|
|
||||||
$(MAKE) O=$(DPDK_SHARED_DIR) build
|
|
||||||
|
|
||||||
build: build-arch build-indep
|
|
||||||
|
|
||||||
binary-indep: PACKAGE_NAME=dpdk-doc
|
|
||||||
binary-indep: DOCDIR=usr/share/doc/dpdk
|
|
||||||
binary-indep: export DH_OPTIONS=--indep
|
|
||||||
binary-indep:
|
|
||||||
dh_testroot
|
|
||||||
dh_prep
|
|
||||||
dh_testdir
|
|
||||||
dh_installdirs
|
|
||||||
dh_install
|
|
||||||
dh_installdocs
|
|
||||||
dh_installchangelogs
|
|
||||||
dh_lintian
|
|
||||||
# Package: dpdk-doc
|
|
||||||
# All files based on the install-doc rule (includes examples)
|
|
||||||
$(MAKE) O=$(DPDK_SHARED_DIR) prefix=/usr \
|
|
||||||
DESTDIR=debian/dpdk-doc install-doc
|
|
||||||
dh_link
|
|
||||||
dh_compress
|
|
||||||
dh_fixperms
|
|
||||||
dh_installdeb
|
|
||||||
dh_gencontrol
|
|
||||||
dh_md5sums
|
|
||||||
dh_builddeb
|
|
||||||
|
|
||||||
binary-arch: LIBDIR=usr/lib/$(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
|
|
||||||
binary-arch: export DH_OPTIONS=--arch
|
|
||||||
binary-arch:
|
|
||||||
dh_testroot
|
|
||||||
dh_prep
|
|
||||||
dh_testdir
|
|
||||||
dh_installdirs
|
|
||||||
dh_install
|
|
||||||
dh_installdocs
|
|
||||||
dh_installchangelogs
|
|
||||||
dh_lintian
|
|
||||||
dh_systemd_enable
|
|
||||||
dh_installinit --no-start --no-restart-on-upgrade
|
|
||||||
dh_systemd_start --no-start --no-restart-on-upgrade
|
|
||||||
# Package: dpdk (runtime)
|
|
||||||
$(MAKE) O=$(DPDK_STATIC_DIR) prefix=/usr \
|
|
||||||
DESTDIR=debian/dpdk install-runtime
|
|
||||||
$(MAKE) O=$(DPDK_SHARED_DIR) prefix=/usr \
|
|
||||||
DESTDIR=debian/dpdk install-runtime
|
|
||||||
cp debian/dpdk.interfaces debian/dpdk/etc/dpdk/interfaces
|
|
||||||
#rm debian/dpdk/usr/sbin/dpdk_nic_bind
|
|
||||||
ln -s /usr/share/dpdk/tools/dpdk_nic_bind.py \
|
|
||||||
debian/dpdk/sbin/dpdk_nic_bind
|
|
||||||
# Package: libdpdk0 (bare runtime libs)
|
|
||||||
mkdir -p debian/libdpdk0/$(LIBDIR)
|
|
||||||
# NOTE so far upstream dpdk has not settled on really versioning the
|
|
||||||
# combined lib. There are discussions ongoing and various alternative
|
|
||||||
# approaches.
|
|
||||||
# We have to wait until that is clarified upstream (in a follow on dpdk
|
|
||||||
# version).
|
|
||||||
# One likely solution will make us ship the non combined .so and a
|
|
||||||
# linker script which replaces the combined lib.
|
|
||||||
# To easen package management a few notes how this will change if that
|
|
||||||
# happens:
|
|
||||||
# NOTE: linker script - this becomes a nop (linker skript has no sover
|
|
||||||
# on its own)
|
|
||||||
rm debian/dpdk/usr/lib/libdpdk.so
|
|
||||||
cp -a $(DPDK_SHARED_DIR)/lib/* debian/libdpdk0/$(LIBDIR)/
|
|
||||||
# NOTE: linker script - insert basenames loop for all .so's
|
|
||||||
# NOTE: linker script - we also will need multiple symbol files then
|
|
||||||
# Package: dpdk-dev (build environment)
|
|
||||||
$(MAKE) O=$(DPDK_SHARED_DIR) prefix=/usr \
|
|
||||||
DESTDIR=debian/dpdk-dev install-sdk
|
|
||||||
cp $(DPDK_SHARED_DIR)/.config debian/dpdk-dev/usr/share/dpdk/config
|
|
||||||
# Package: libdpdk-dev (bare headers and static devel libs)
|
|
||||||
mkdir -p debian/libdpdk-dev/usr/lib/
|
|
||||||
# NOTE: linker script - insert basenames loop for all .a's
|
|
||||||
#ln -s /$(LIBDIR)/libdpdk.so \
|
|
||||||
# debian/libdpdk-dev/$(LIBDIR)/libdpdk.so.0
|
|
||||||
cp -a $(DPDK_STATIC_DIR)/lib/* debian/libdpdk-dev/usr/lib/
|
|
||||||
mv debian/dpdk-dev/usr/include/dpdk debian/libdpdk-dev/usr/include/
|
|
||||||
# NOTE: linker script - package instead of removing all sublibs
|
|
||||||
rm -rf debian/dpdk/usr/lib*
|
|
||||||
dh_python2
|
|
||||||
dh_perl
|
|
||||||
dh_link
|
|
||||||
dh_compress
|
|
||||||
dh_fixperms
|
|
||||||
dh_strip
|
|
||||||
dh_makeshlibs
|
|
||||||
dh_shlibdeps
|
|
||||||
dh_installdeb
|
|
||||||
dh_gencontrol
|
|
||||||
dh_md5sums
|
|
||||||
dh_builddeb
|
|
||||||
|
|
||||||
binary: binary-arch binary-indep
|
|
|
@ -1 +0,0 @@
|
||||||
3.0 (quilt)
|
|
|
@ -1,12 +0,0 @@
|
||||||
#!/bin/bash
|
|
||||||
|
|
||||||
arch=$(dpkg --print-architecture)
|
|
||||||
case $arch in
|
|
||||||
amd64|i386)
|
|
||||||
echo "Architecture ${arch} supported, go on with test"
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo "Architecture ${arch} not supported, SKIP test"
|
|
||||||
exit 0
|
|
||||||
;;
|
|
||||||
esac
|
|
|
@ -1,8 +0,0 @@
|
||||||
Tests: test-initscripts
|
|
||||||
Restrictions: allow-stderr, isolation-machine, needs-root
|
|
||||||
Depends: dpdk [amd64 i386], gawk, mount, systemd, sysvinit-utils
|
|
||||||
|
|
||||||
Tests: test-linkage
|
|
||||||
Restrictions: allow-stderr
|
|
||||||
Depends: libdpdk0 [amd64 i386], libdpdk-dev [amd64 i386], libc6, libc6-dev, gcc,
|
|
||||||
grep, libpcap-dev, libxenstore3.0 [amd64 i386]
|
|
|
@ -1,143 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
set -e
|
|
||||||
|
|
||||||
basedir=$(dirname "$0")
|
|
||||||
. "${basedir}"/check-dpdk-supported-arch.sh
|
|
||||||
|
|
||||||
# Overall that could require up to 1.2G for hugepages in the test environment
|
|
||||||
EXPECT2MHP=10
|
|
||||||
# Some page sizes like e.g. 1G might not be available in all test environments
|
|
||||||
# The test still configures 1 page of 1G size.
|
|
||||||
# One of two things will happen, depending on the test environment:
|
|
||||||
# - has 1G huge page size => they will tried to be allocated (usually env is
|
|
||||||
# too small, but we want to see it fail gracefully for that)
|
|
||||||
# We will not check for the 1G alloc, as we know it often fails in small adt's
|
|
||||||
# - has no 1G huge page size (HW feature) => we check if it fails gracefully
|
|
||||||
EXPECT1GHP=1
|
|
||||||
|
|
||||||
DPDK_CONF="/etc/dpdk/dpdk.conf"
|
|
||||||
DPDK_INTERF="/etc/dpdk/interfaces"
|
|
||||||
|
|
||||||
checkhp() {
|
|
||||||
MMDIR="/sys/kernel/mm/hugepages/${1}"
|
|
||||||
EXPECTHP="${2}"
|
|
||||||
if [ -d "$MMDIR" -a -r "$MMDIR/nr_hugepages" ]; then
|
|
||||||
hpcount=$(cat "$MMDIR/nr_hugepages")
|
|
||||||
if [ "${hpcount}" -ne "${EXPECTHP}" ]; then
|
|
||||||
echo "Hugepages (${hpcount}) not as expected (${EXPECTHP})"
|
|
||||||
exit 1
|
|
||||||
else
|
|
||||||
echo "Hugepages ok (${hpcount})"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
checkstatus() {
|
|
||||||
MARK=${1}
|
|
||||||
EXPMPCOUNT=${2}
|
|
||||||
PRE=${3}
|
|
||||||
POST=${4}
|
|
||||||
EXPECTEDSTATUS=${5}
|
|
||||||
echo "Status after ${MARK}"
|
|
||||||
echo "Status of the Service"
|
|
||||||
${PRE} status "${POST}" || true
|
|
||||||
|
|
||||||
GOTSTATUS=$(${PRE} status "${POST}" | awk '/^ *Active: / { print $2 }')
|
|
||||||
if [ "${GOTSTATUS}" != "${EXPECTEDSTATUS}" ]; then
|
|
||||||
echo "Service status (${GOTSTATUS}) not as expected (${EXPECTEDSTATUS})"
|
|
||||||
exit 1
|
|
||||||
else
|
|
||||||
echo "Service status (${GOTSTATUS}) as expected"
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Status of hugetlbfs mount points"
|
|
||||||
# this section is ok to create bad RCs when no mounts are available
|
|
||||||
set +e
|
|
||||||
grep hugetlbfs < /proc/mounts
|
|
||||||
htlbfscount=$(grep -c hugetlbfs < /proc/mounts)
|
|
||||||
set -e
|
|
||||||
|
|
||||||
# we have to reduce the expected mountpoint count in case some sizes are
|
|
||||||
# not supported by the current kernel/environment
|
|
||||||
if [ ${EXPMPCOUNT} -gt 0 ]; then
|
|
||||||
if [ ! -d /sys/kernel/mm/hugepages/hugepages-2048kB ]; then
|
|
||||||
EXPMPCOUNT=$((EXPMPCOUNT-1))
|
|
||||||
fi
|
|
||||||
if [ ! -d /sys/kernel/mm/hugepages/hugepages-1048576kB ]; then
|
|
||||||
EXPMPCOUNT=$((EXPMPCOUNT-1))
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ "${htlbfscount}" -eq "${EXPMPCOUNT}" ]; then
|
|
||||||
echo "MP Count (${htlbfscount}) as expected (${EXPMPCOUNT})"
|
|
||||||
else
|
|
||||||
echo "MP Count (${htlbfscount}) not as expected (${EXPMPCOUNT})"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# check if setting HP worked
|
|
||||||
if [ "${EXPMPCOUNT}" -ne "0" ]; then
|
|
||||||
checkhp "hugepages-2048kB" "${EXPECT2MHP}"
|
|
||||||
# We do not check 1G alloc, as it is known to be often not available
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
resetservice() {
|
|
||||||
# help a bit with memory fragmentation regarding huge page allocation
|
|
||||||
sync
|
|
||||||
echo 3 > /proc/sys/vm/drop_caches
|
|
||||||
|
|
||||||
# stopping and resetting Service
|
|
||||||
systemctl stop dpdk.service
|
|
||||||
systemctl reset-failed dpdk.service
|
|
||||||
|
|
||||||
echo "Unmounting all potential hugetlbfs mounts"
|
|
||||||
awk '/hugetlbfs/ {print $2}' /proc/mounts | while read hugetlbmount; do
|
|
||||||
umount -v "$hugetlbmount"
|
|
||||||
done
|
|
||||||
}
|
|
||||||
|
|
||||||
checkinitstyle() {
|
|
||||||
# We want to verify that
|
|
||||||
# - initially our environment has no hugetlbfs mount
|
|
||||||
# - a system without hugetlbfs mount gets it mounted
|
|
||||||
# - a restart of the service does neither drop nor duplicate the mount
|
|
||||||
PRE=${1}
|
|
||||||
POST=${2}
|
|
||||||
TYPE=${3}
|
|
||||||
printf "\n\n### Checking Type %s ###\n" "${TYPE}"
|
|
||||||
resetservice
|
|
||||||
checkstatus "${TYPE}-BEGIN" 0 "${PRE}" "${POST}" "inactive"
|
|
||||||
echo "### Starting Service ###"
|
|
||||||
${PRE} start "${POST}"
|
|
||||||
checkstatus "${TYPE}-START" 2 "${PRE}" "${POST}" "active"
|
|
||||||
echo "### Restarting Service ###"
|
|
||||||
${PRE} restart "${POST}"
|
|
||||||
checkstatus "${TYPE}-RESTART" 2 "${PRE}" "${POST}" "active"
|
|
||||||
}
|
|
||||||
|
|
||||||
echo "NR_2M_PAGES=$EXPECT2MHP" >> ${DPDK_CONF}
|
|
||||||
echo "NR_1G_PAGES=$EXPECT1GHP" >> ${DPDK_CONF}
|
|
||||||
|
|
||||||
# We can't rely on any real device for DPDK tests in adt-* environments. But
|
|
||||||
# we can expect all kind of broken configuration not to break it (would be
|
|
||||||
# detected via set -e).
|
|
||||||
# So add all kind of known-to-be-broken definitions and expect it not to fail.
|
|
||||||
cat <<EOF > ${DPDK_INTERF}
|
|
||||||
# wrong bus
|
|
||||||
pTi 0000:04:00.0 uio-pci-generic
|
|
||||||
# not enough parms
|
|
||||||
0000:04:00.0 uio-pci-generic
|
|
||||||
# empty line
|
|
||||||
|
|
||||||
# non existing device
|
|
||||||
pci 1234:56:78.9 uio-pci-generic
|
|
||||||
EOF
|
|
||||||
|
|
||||||
# some had issues in the past caused by different init systems, so we test all
|
|
||||||
# Direct Calls
|
|
||||||
checkinitstyle "/etc/init.d/dpdk" "" "Direct"
|
|
||||||
# System V style init
|
|
||||||
checkinitstyle "service dpdk" "" "SysV"
|
|
||||||
# SystemD style init
|
|
||||||
checkinitstyle "systemctl" "dpdk.service" "SystemD"
|
|
|
@ -1,41 +0,0 @@
|
||||||
#!/bin/bash
|
|
||||||
set -eu
|
|
||||||
|
|
||||||
basedir=$(dirname "$0")
|
|
||||||
. "${basedir}"/check-dpdk-supported-arch.sh
|
|
||||||
|
|
||||||
cat > testlinkage.c << EOF
|
|
||||||
#include <stdio.h>
|
|
||||||
#include "dpdk/rte_common.h"
|
|
||||||
|
|
||||||
int main()
|
|
||||||
{
|
|
||||||
printf("Hello rte_exit %p\n", rte_exit);
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
EOF
|
|
||||||
|
|
||||||
# with broken linkage this will fail with undefined symbols
|
|
||||||
printf "\n\nChecking compile with link against DPDK\n"
|
|
||||||
gcc -v testlinkage.c -o testlinkage.bin -Wall -Werror -ldpdk
|
|
||||||
echo "OK"
|
|
||||||
|
|
||||||
printf "\n\nChecking for expected libraries\n"
|
|
||||||
# The binary should inherit dependencies from the .so
|
|
||||||
# check one of the libs that came in due to features
|
|
||||||
ldd testlinkage.bin | grep libpcap
|
|
||||||
# check one of the libs that came in due to basic dpdp linuxapp config
|
|
||||||
ldd testlinkage.bin | grep libm
|
|
||||||
# one that it uses implicitly
|
|
||||||
ldd testlinkage.bin | grep libpthread
|
|
||||||
echo "OK"
|
|
||||||
|
|
||||||
printf "\n\nChecking test execution\n"
|
|
||||||
# It doesn't do much, but it should work - so calling it is a minor extra test.
|
|
||||||
# It is known to fail without SSE3 in e.g. some adt environments, in that
|
|
||||||
# case check at least that we get the correct error message (this will trigger
|
|
||||||
# a test fail if it neither finds the success nor the expected error message)
|
|
||||||
(./testlinkage.bin 2>&1 || /bin/true ) | \
|
|
||||||
grep -E 'ERROR: This system does not support "SSSE3".|Hello rte_exit 0x'
|
|
||||||
|
|
||||||
echo "OK"
|
|
|
@ -1,2 +0,0 @@
|
||||||
version=3
|
|
||||||
http://www.dpdk.org/download /browse/dpdk/snapshot/dpdk-(.+)\.(?:zip|tgz|tbz|txz|(?:tar\.(?:gz|bz2|xz)))
|
|
|
@ -25,7 +25,7 @@ function build_pkg {
|
||||||
cp -r ${DEB_DIR}/* ${DIR}/repositories/ubuntu/
|
cp -r ${DEB_DIR}/* ${DIR}/repositories/ubuntu/
|
||||||
|
|
||||||
rm -rf ${DEB_DIR}; mkdir -p ${DEB_DIR}; chmod 777 ${DEB_DIR};
|
rm -rf ${DEB_DIR}; mkdir -p ${DEB_DIR}; chmod 777 ${DEB_DIR};
|
||||||
sudo docker run -v ${DEB_DIR}:/deb -t ovs_build /ovs_build/build-ovs-nsh-dpdk.sh
|
sudo docker run -v ${DEB_DIR}:/deb -t ovs_build /ovs_build/build-ovs-nsh.sh
|
||||||
cp -r ${DEB_DIR}/* ${DIR}/repositories/ubuntu/
|
cp -r ${DEB_DIR}/* ${DIR}/repositories/ubuntu/
|
||||||
rm -rf ${DEB_DIR}
|
rm -rf ${DEB_DIR}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue