Merge tag 'upstream/18.11-rc3' into 18.11.x 27/15927/1
authorLuca Boccassi <luca.boccassi@gmail.com>
Wed, 14 Nov 2018 11:13:57 +0000 (11:13 +0000)
committerLuca Boccassi <luca.boccassi@gmail.com>
Wed, 14 Nov 2018 11:14:10 +0000 (11:14 +0000)
Upstream version 18.11-rc3

Change-Id: I60edf371bef2e72307adde288af0ba1e9de3a720
Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
157 files changed:
debian/.gitignore [new file with mode: 0644]
debian/README.source [new file with mode: 0644]
debian/changelog [new file with mode: 0644]
debian/compat [new file with mode: 0644]
debian/control [new file with mode: 0644]
debian/control.modules.in [new file with mode: 0644]
debian/copyright [new file with mode: 0644]
debian/dpdk-doc.README.Debian [new file with mode: 0644]
debian/dpdk-doc.install [new file with mode: 0644]
debian/dpdk-doc.lintian-overrides [new file with mode: 0644]
debian/dpdk-igb-uio-dkms.dkms.in [new file with mode: 0644]
debian/dpdk-init [new file with mode: 0755]
debian/dpdk-rte-kni-dkms.dkms.in [new file with mode: 0644]
debian/dpdk-sdk-env.sh.in [new file with mode: 0755]
debian/dpdk.conf [new file with mode: 0644]
debian/dpdk.init [new file with mode: 0644]
debian/dpdk.install [new file with mode: 0644]
debian/dpdk.lintian-overrides [new file with mode: 0644]
debian/dpdk.service [new file with mode: 0644]
debian/interfaces [new file with mode: 0644]
debian/kernel-version [new file with mode: 0755]
debian/libdpdk-dev.install [new file with mode: 0644]
debian/libdpdk-dev.lintian-overrides [new file with mode: 0644]
debian/librte-acl18.11.symbols [new file with mode: 0644]
debian/librte-bbdev18.11.symbols [new file with mode: 0644]
debian/librte-bitratestats18.11.symbols [new file with mode: 0644]
debian/librte-bpf18.11.symbols [new file with mode: 0644]
debian/librte-bus-fslmc18.11.symbols [new file with mode: 0644]
debian/librte-bus-ifpga18.11.symbols [new file with mode: 0644]
debian/librte-bus-pci18.11.symbols [new file with mode: 0644]
debian/librte-bus-vdev18.11.symbols [new file with mode: 0644]
debian/librte-bus-vmbus18.11.symbols [new file with mode: 0644]
debian/librte-cfgfile18.11.symbols [new file with mode: 0644]
debian/librte-cmdline18.11.symbols [new file with mode: 0644]
debian/librte-common-cpt18.11.symbols [new file with mode: 0644]
debian/librte-common-dpaax18.11.symbols [new file with mode: 0644]
debian/librte-common-octeontx18.11.symbols [new file with mode: 0644]
debian/librte-compressdev18.11.symbols [new file with mode: 0644]
debian/librte-cryptodev18.11.symbols [new file with mode: 0644]
debian/librte-distributor18.11.symbols [new file with mode: 0644]
debian/librte-eal18.11.symbols [new file with mode: 0644]
debian/librte-efd18.11.symbols [new file with mode: 0644]
debian/librte-ethdev18.11.symbols [new file with mode: 0644]
debian/librte-eventdev18.11.symbols [new file with mode: 0644]
debian/librte-flow-classify18.11.symbols [new file with mode: 0644]
debian/librte-gso18.11.symbols [new file with mode: 0644]
debian/librte-hash18.11.symbols [new file with mode: 0644]
debian/librte-ip-frag18.11.symbols [new file with mode: 0644]
debian/librte-jobstats18.11.symbols [new file with mode: 0644]
debian/librte-kni18.11.symbols [new file with mode: 0644]
debian/librte-kvargs18.11.symbols [new file with mode: 0644]
debian/librte-latencystats18.11.symbols [new file with mode: 0644]
debian/librte-lpm18.11.symbols [new file with mode: 0644]
debian/librte-mbuf18.11.symbols [new file with mode: 0644]
debian/librte-member18.11.symbols [new file with mode: 0644]
debian/librte-mempool-bucket18.11.symbols [new file with mode: 0644]
debian/librte-mempool-octeontx18.11.symbols [new file with mode: 0644]
debian/librte-mempool-ring18.11.symbols [new file with mode: 0644]
debian/librte-mempool-stack18.11.symbols [new file with mode: 0644]
debian/librte-mempool18.11.symbols [new file with mode: 0644]
debian/librte-meter18.11.symbols [new file with mode: 0644]
debian/librte-metrics18.11.symbols [new file with mode: 0644]
debian/librte-net18.11.symbols [new file with mode: 0644]
debian/librte-pci18.11.symbols [new file with mode: 0644]
debian/librte-pdump18.11.symbols [new file with mode: 0644]
debian/librte-pipeline18.11.symbols [new file with mode: 0644]
debian/librte-pmd-af-packet18.11.symbols [new file with mode: 0644]
debian/librte-pmd-ark18.11.symbols [new file with mode: 0644]
debian/librte-pmd-atlantic18.11.symbols [new file with mode: 0644]
debian/librte-pmd-avf18.11.symbols [new file with mode: 0644]
debian/librte-pmd-avp18.11.symbols [new file with mode: 0644]
debian/librte-pmd-axgbe18.11.symbols [new file with mode: 0644]
debian/librte-pmd-bbdev-null18.11.symbols [new file with mode: 0644]
debian/librte-pmd-bnx2x18.11.symbols [new file with mode: 0644]
debian/librte-pmd-bnxt18.11.symbols [new file with mode: 0644]
debian/librte-pmd-bond18.11.symbols [new file with mode: 0644]
debian/librte-pmd-caam-jr18.11.symbols [new file with mode: 0644]
debian/librte-pmd-ccp18.11.symbols [new file with mode: 0644]
debian/librte-pmd-crypto-scheduler18.11.symbols [new file with mode: 0644]
debian/librte-pmd-cxgbe18.11.symbols [new file with mode: 0644]
debian/librte-pmd-dpaa-event18.11.symbols [new file with mode: 0644]
debian/librte-pmd-dpaa-sec18.11.symbols [new file with mode: 0644]
debian/librte-pmd-dpaa18.11.symbols [new file with mode: 0644]
debian/librte-pmd-dpaa2-18.11.symbols [new file with mode: 0644]
debian/librte-pmd-dpaa2-cmdif18.11.symbols [new file with mode: 0644]
debian/librte-pmd-dpaa2-event18.11.symbols [new file with mode: 0644]
debian/librte-pmd-dpaa2-qdma18.11.symbols [new file with mode: 0644]
debian/librte-pmd-dpaa2-sec18.11.symbols [new file with mode: 0644]
debian/librte-pmd-dsw-event18.11.symbols [new file with mode: 0644]
debian/librte-pmd-e1000-18.11.symbols [new file with mode: 0644]
debian/librte-pmd-ena18.11.symbols [new file with mode: 0644]
debian/librte-pmd-enetc18.11.symbols [new file with mode: 0644]
debian/librte-pmd-enic18.11.symbols [new file with mode: 0644]
debian/librte-pmd-fm10k18.11.symbols [new file with mode: 0644]
debian/librte-pmd-i40e18.11.symbols [new file with mode: 0644]
debian/librte-pmd-ifc18.11.symbols [new file with mode: 0644]
debian/librte-pmd-ifpga-rawdev18.11.symbols [new file with mode: 0644]
debian/librte-pmd-ixgbe18.11.symbols [new file with mode: 0644]
debian/librte-pmd-kni18.11.symbols [new file with mode: 0644]
debian/librte-pmd-liquidio18.11.symbols [new file with mode: 0644]
debian/librte-pmd-mlx4-18.11.symbols [new file with mode: 0644]
debian/librte-pmd-mlx5-18.11.symbols [new file with mode: 0644]
debian/librte-pmd-netvsc18.11.symbols [new file with mode: 0644]
debian/librte-pmd-nfp18.11.symbols [new file with mode: 0644]
debian/librte-pmd-null-crypto18.11.symbols [new file with mode: 0644]
debian/librte-pmd-null18.11.symbols [new file with mode: 0644]
debian/librte-pmd-octeontx-compress18.11.symbols [new file with mode: 0644]
debian/librte-pmd-octeontx-crypto18.11.symbols [new file with mode: 0644]
debian/librte-pmd-octeontx-event18.11.symbols [new file with mode: 0644]
debian/librte-pmd-octeontx18.11.symbols [new file with mode: 0644]
debian/librte-pmd-opdl-event18.11.symbols [new file with mode: 0644]
debian/librte-pmd-openssl18.11.symbols [new file with mode: 0644]
debian/librte-pmd-pcap18.11.symbols [new file with mode: 0644]
debian/librte-pmd-qat18.11.symbols [new file with mode: 0644]
debian/librte-pmd-qede18.11.symbols [new file with mode: 0644]
debian/librte-pmd-ring18.11.symbols [new file with mode: 0644]
debian/librte-pmd-sfc18.11.symbols [new file with mode: 0644]
debian/librte-pmd-skeleton-event18.11.symbols [new file with mode: 0644]
debian/librte-pmd-skeleton-rawdev18.11.symbols [new file with mode: 0644]
debian/librte-pmd-softnic18.11.symbols [new file with mode: 0644]
debian/librte-pmd-sw-event18.11.symbols [new file with mode: 0644]
debian/librte-pmd-tap18.11.symbols [new file with mode: 0644]
debian/librte-pmd-thunderx18.11.symbols [new file with mode: 0644]
debian/librte-pmd-vdev-netvsc18.11.symbols [new file with mode: 0644]
debian/librte-pmd-vhost18.11.symbols [new file with mode: 0644]
debian/librte-pmd-virtio-crypto18.11.symbols [new file with mode: 0644]
debian/librte-pmd-virtio18.11.symbols [new file with mode: 0644]
debian/librte-pmd-vmxnet3-18.11.symbols [new file with mode: 0644]
debian/librte-pmd-zlib18.11.symbols [new file with mode: 0644]
debian/librte-port18.11.symbols [new file with mode: 0644]
debian/librte-power18.11.symbols [new file with mode: 0644]
debian/librte-rawdev18.11.symbols [new file with mode: 0644]
debian/librte-reorder18.11.symbols [new file with mode: 0644]
debian/librte-ring18.11.symbols [new file with mode: 0644]
debian/librte-sched18.11.symbols [new file with mode: 0644]
debian/librte-security18.11.symbols [new file with mode: 0644]
debian/librte-table18.11.symbols [new file with mode: 0644]
debian/librte-telemetry18.11.symbols [new file with mode: 0644]
debian/librte-timer18.11.symbols [new file with mode: 0644]
debian/librte-vhost18.11.symbols [new file with mode: 0644]
debian/not-installed [new file with mode: 0644]
debian/patches/fix-build-arch-defaults.patch [new file with mode: 0644]
debian/patches/series [new file with mode: 0644]
debian/prep-modules [new file with mode: 0755]
debian/rules [new file with mode: 0755]
debian/source/format [new file with mode: 0644]
debian/source/options [new file with mode: 0644]
debian/tests/check-dpdk-supported-arch.sh [new file with mode: 0644]
debian/tests/control [new file with mode: 0644]
debian/tests/test-autotest [new file with mode: 0644]
debian/tests/test-dkms [new file with mode: 0644]
debian/tests/test-initscripts [new file with mode: 0644]
debian/tests/test-linkage [new file with mode: 0644]
debian/update-control.py [new file with mode: 0644]
debian/update-helper-control.py [new file with mode: 0755]
debian/update-helper-symbols.sh [new file with mode: 0755]
debian/watch [new file with mode: 0644]

diff --git a/debian/.gitignore b/debian/.gitignore
new file mode 100644 (file)
index 0000000..0bd9950
--- /dev/null
@@ -0,0 +1,20 @@
+*.debhelper.log
+*.substvars
+*.postinst.debhelper
+*.postrm.debhelper
+*.prerm.debhelper
+*.dkms.debhelper
+build/
+control.modules
+debhelper-build-stamp
+dpdk-dev/
+dpdk-doc/
+dpdk-igb-uio-dkms/
+dpdk-modules-*/
+dpdk-rte-kni-dkms/
+dpdk/
+files
+libdpdk-dev/
+librte*/
+libethdev*/
+VERSION
diff --git a/debian/README.source b/debian/README.source
new file mode 100644 (file)
index 0000000..a21f5ee
--- /dev/null
@@ -0,0 +1,42 @@
+How to build the package - for CI systems, etc
+
+1 - install all the build-dependencies as listed in the debian/control file.
+    From the repo top-level directory:
+
+apt-get install `dpkg-checkbuilddeps |& sed "s/.*://g" |& sed "s/(...[0-9]*)//g"`
+
+2 - run debuild (the flags will avoid signing the built packages):
+    From the repo top-level directory:
+
+debuild -uc -us
+
+***************
+
+quilt patches format
+
+Note that we use the dquilt format for patches as outlined on Debian's wiki:
+https://www.debian.org/doc/manuals/maint-guide/modify.en.html#quiltrc
+
+Please consider using the same format to avoid excessive churn when adding or
+refreshing patches.
+
+Add the following to your ~/.bashrc (or equivalent):
+
+alias dquilt="quilt --quiltrc=${HOME}/.quiltrc-dpkg"
+complete -F _quilt_completion $_quilt_complete_opt dquilt
+
+And then create a new ~/.quiltrc-dpkg file with content:
+
+d=. ; while [ ! -d $d/debian -a `readlink -e $d` != / ]; do d=$d/..; done
+if [ -d $d/debian ] && [ -z $QUILT_PATCHES ]; then
+    # if in Debian packaging tree with unset $QUILT_PATCHES
+    QUILT_PATCHES="debian/patches"
+    QUILT_PATCH_OPTS="--reject-format=unified"
+    QUILT_DIFF_ARGS="-p ab --no-timestamps --no-index --color=auto"
+    QUILT_REFRESH_ARGS="-p ab --no-timestamps --no-index"
+    QUILT_COLORS="diff_hdr=1;32:diff_add=1;34:diff_rem=1;31:diff_hunk=1;33:diff_ctx=35:diff_cctx=33"
+    if ! [ -d $d/debian/patches ]; then mkdir $d/debian/patches; fi
+fi
+
+Open a new terminal or souce ~/.bashrc, and then you will be able to use
+dquilt.
diff --git a/debian/changelog b/debian/changelog
new file mode 100644 (file)
index 0000000..706d532
--- /dev/null
@@ -0,0 +1,990 @@
+dpdk (18.11-rc2-1~git1.1) disco; urgency=medium
+
+  [ Luca Boccassi ]
+  * New upstream release 18.11; for a full list of changes see:
+    https://dpdk.org/doc/guides/rel_notes/release_18_11.html
+  * Add new 18.11 PMDs and libraries:
+    - librte-common-cpt18.11
+    - librte-common-dpaax18.11
+    - librte-pmd-atlantic18.11
+    - librte-pmd-caam-jr18.11
+    - librte-pmd-octeontx-crypto18.11
+    - librte-telemetry18.11
+  * Bump debhelper compat to 10.
+  * Switch to Meson. Rename PMD packages to follow the shared library names:
+    - librte-pmd-vmxnet3-uio18.11 -> librte-pmd-vmxnet3-18.11
+    - librte-pmd-lio18.11 -> librte-pmd-liquidio18.11
+    - librte-pmd-octeontx-ssovf18.11 -> librte-pmd-octeontx-event18.11
+    - librte-pmd-octeontx-zip18.11 -> librte-pmd-octeontx-compress18.11
+    - librte-pmd-sfc-efx18.11 -> librte-pmd-sfc18.11
+    - librte-pmd-thunderx-nicvf18.11 -> librte-pmd-thunderx18.11
+    Switch PMD installation directory from /usr/lib/*/dpdk-18.11-drivers to
+    /usr/lib/*/dpdk/pmds-18.11.
+    Remove backward-compatibility symlink for arch-dependent headers. Users
+    now should use the libdpdk.pc pkg-config file to get the appropriate
+    CFLAGS, or specify -I/usr/include/<ARCH>/dpdk manually.
+    Drop the dpdk-dev SDK package, users should just use pkg-config now.
+    Rename all binaries and scripts to have a dpdk- prefix.
+  * Don't build dpdk-doc when using the nodoc profile.
+  * Build-depend on libjansson-dev, libbsd-dev and libelf-dev.
+  * Package libraries built by default:
+    - librte-pmd-bnx2x18.11
+    - librte-pmd-ccp18.11
+    - librte-pmd-dsw-event18.11
+  * Use dh-missing.
+  * Package zlib PMD:
+    - librte-pmd-zlib18.11
+  * Add missing BNX URL metadata.
+  * Drop libdpdk-dbgsym - not really used and broken in sid.
+  * Override -march pkg-config Lintian error.
+  * Enable PIE hardening.
+  * Override lintian warning about scripts with extension in bin.
+  * Add libssl-dev dependency on libdpdk-dev for libcrypto.pc.
+  * Add libbsd-dev dependency on libdpdk-dev for bsd/string.h.
+  * Drop fix-vhost-user-socket-permission.patch and
+    tmpfix-ppc-build-error.patch. The latter has been fixed upstream,
+    and the former is not needed as we no longer support vhost-user
+    in client mode. Please switch to server mode.
+
+  [ Christian Ehrhardt ]
+  * d/p/fix-build-arch-defaults.patch: fix non x86 compilation and defaults
+  * d/control: fix libnuma compile issues now available on armhf
+  * d/rules: armhf has no default machine, set old default machine
+
+ -- Luca Boccassi <bluca@debian.org>  Mon, 29 Oct 2018 16:07:49 +0000
+
+dpdk (18.08-1~git1.1) UNRELEASED; urgency=medium
+
+  [ Luca Boccassi ]
+  * New upstream release 18.08; for a full list of changes see:
+    https://dpdk.org/doc/guides/rel_notes/release_18_08.html
+    - refresh d/p/fix-vhost-user-socket-permission.patch for 18.08
+    - add build-dependency on libmnl-dev, needed by MLX PMD
+    - d/control: bump ABI version on packages
+    - bump d/*.symbols for new ABI
+    - Rename librte-ifcvf-vdpa to librte-pmd-ifc following upstream change
+  * Enable armhf build. (Closes: #906931)
+  * Add libibverbs-dev dependency in libdpdk-dev, for static linking.
+    (Closes: #907365)
+  * Add missing packages for new PMDs and libraries built by default:
+    - librte-bus-vmbus18.08
+    - librte-pmd-netvsc18.08
+    - librte-pmd-qat18.08
+    - librte-pmd-octeontx-zip18.08
+  * Add "terse" DEB_BUILD_OPTIONS to reduce build log verbosity.
+  * Set Rules-Requires-Root to no.
+  * Bump Standards-Version to 4.2.1.
+
+  [ Christian Ehrhardt ]
+  * d/p/tmpfix-ppc-build-error.patch: fix ppc64el build issue due to a
+    conflict of stdbool and altivec.
+
+ -- Luca Boccassi <bluca@debian.org>  Tue, 14 Aug 2018 18:58:11 +0100
+
+dpdk (18.05-1~git1) UNRELEASED; urgency=medium
+
+  [ Christian Ehrhardt ]
+  * New upstream release 18.05; for a full list of changes see:
+    https://dpdk.org/doc/guides/rel_notes/release_18_05.html
+    - refresh d/p/fix-vhost-user-socket-permission.patch for 18.05
+    - d/control: bump ABI version on packages
+    - bump d/*.symbols for new ABI
+    - d/control: d/*.symbols: new libraries and pmds
+      - librte-bpf
+      - librte-bus-ifpga
+      - librte-common-octeontx
+      - librte-compressdev
+      - librte-ifcvf-vdpa
+      - librte-mempool-bucket
+      - librte-pmd-axgbe
+      - librte-pmd-dpaa
+      - librte-pmd-dpaa-sec
+      - librte-pmd-dpaa-event
+      - librte-pmd-dpaa2
+      - librte-pmd-dpaa2-cmdif
+      - librte-pmd-dpaa2-event
+      - librte-pmd-dpaa2-qdma
+      - librte-pmd-dpaa2-sec
+      - librte-pmd-ifpga-rawdev
+      - librte-pmd-virtio-crypto
+    - d/rules: adapt to move of kernel modules directories in 18.05
+    - d/control: dpaa drivers build on non arm64 as well now
+    - d/rules: handle IFCVF as callback driver
+  * Dropped changes that are upstream in 18.05:
+    - Backport dpdk-dev-app-testpmd-fix-DPAA-shared-library-dependency.patch
+      and dpdk-dev-mk-fix-dependencies-of-dpaaX-drivers.patch from upstream to
+    - d/p/dpdk-dev-eal-ppc-fix-rte_smp_mb-for-a-compilation-error-with-else-
+      clause.patch: fix build on ppc64el
+      fix arm64 build.
+
+  [ Luca Boccassi ]
+  * Enable librte-pmd-avf on arm64, i386 and ppc64el since it's available.
+    (Closes: #905041)
+  * Enable AESNI-MB/AESNI-GCM crypto drivers PMDs and packages with build
+    dependency on libipsec-mb-dev (amd64-only).
+    (Closes: #905580)
+
+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com>  Fri, 01 Jun 2018 09:18:32 +0200
+
+dpdk (18.02.1-1~git1) UNRELEASED; urgency=medium
+
+  [ Luca Boccassi ]
+  * New upstream release 18.02; for a full list of changes see:
+    https://dpdk.org/doc/guides/rel_notes/release_18_02.html
+  * New upstream release 18.02.1; for a full list of changes see:
+    https://dpdk.org/doc/guides-18.02/rel_notes/release_18_02.html
+    * Fixes CVE-2018-1059
+  * Bump ABI version of packages from 17.11 to 18.02.
+  * Drop testpmd-link-virtio.patch, not needed.
+  * Refresh fix-vhost-user-socket-permission.patch to remove fuzz from
+    18.02.
+  * Add packages for new libraries/PMDs: librte-bbdev18.02,
+    librte-rawdev18.02, librte-pmd-avf18.02,
+    librte-pmd-opdl-event18.02.
+  * Add package and build-dependency for OpenSSL PMD:
+    librte-pmd-openssl18.02. (Closes: #886150)
+  * autopkgtest: use libdpdk pkg-config to set all the required compiler
+    flags.
+  * autopkgtest: add pkg-config dependency to really fix linkate test.
+  * Backport dpdk-dev-app-testpmd-fix-DPAA-shared-library-dependency.patch
+    and dpdk-dev-mk-fix-dependencies-of-dpaaX-drivers.patch from upstream to
+    fix arm64 build.
+  * Add librte-bus-dpaa18.02, librte-bus-fslmc.02, librte-pmd-dpaa18.02 and
+    librte-mempool-dpaa18.02 on arm64, as their config is enabled by default
+    upstream.
+  * Add new symbols to symbols files for 18.02.
+
+  [ Christian Ehrhardt ]
+  * d/control: let libdpdk-dev depend on zlib1g-dev as it is used on build and
+    creeps into pkg-config. Even thou at the moment no dpdk .so uses it is
+    required to build correctly with the libs provided by pkg-config.
+  * d/t/control: depend on dpdk-dev to be able to use dpdk-sdk-env.sh
+  * d/t/testlinkage: improvements and fixes for current debci issues
+    - Use RTE_SDK to build the binary
+    - verbose execution for better debugging
+    - check for librt instead of libpthread as second level lib
+    - use a valid prototype for main
+  * Add package and build-dependency MLX4 and MLX5 PMDs.
+    With rdma-core >16 being in Debian and Ubuntu as well as some stabilization
+    work ongoing upstream we can start to enable these PMDs.
+  * d/p/dpdk-dev-eal-ppc-fix-rte_smp_mb-for-a-compilation-error-with-else-
+    clause.patch: fix build on ppc64el
+  * test-linkage: drop brittle test for secondary library dependencies
+  * debian/control: Fix MLX4/MLX5 enablement to match DPDK 18.02
+  * d/control: add new PMDs: bbdev-null, skeleton-rawdev, vdev-netvsc
+  * Symbols of new PMDs in 18.02
+    - debian/librte-pmd-bbdev-null18.02.symbols
+    - debian/librte-pmd-mlx4-18.02.symbols
+    - debian/librte-pmd-mlx5-18.02.symbols
+    - debian/librte-pmd-skeleton-rawdev18.02.symbols
+    - debian/librte-pmd-vdev-netvsc18.02.symbols
+
+ -- Luca Boccassi <bluca@debian.org>  Mon, 19 Feb 2018 11:31:42 +0000
+
+dpdk (17.11-1~git1) UNRELEASED; urgency=medium
+
+  [ Luca Boccassi ]
+  * New upstream release 17.11; for a full list of changes see:
+    http://dpdk.org/doc/guides/rel_notes/release_17_11.html
+  * Bump ABI version of packages from 17.08 to 17.11.
+  * Fix upstream version parsing in d/rules to account for -rcX.
+  * Add packages for new libraries/PMDs: librte-bus-pci17.11,
+    librte-security17.11, librte-mempool-octeontx17.11,
+    librte-flow-classify17.11, librte-gso17.11, librte-member17.11,
+    librte-pci17.11, librte-pmd-softnic17.11, librte-bus-vdev17.11.
+  * Drop mk-* patches for reproducible builds, merged upstream.
+  * Refresh fix-vhost-user-socket-permission.patch to remove fuzz from
+    17.11-rc3.
+  * Switch generated dependencies to Python 3 due to switch to Python 3
+    Sphinx.
+  * Build-Depend on debhelper (>= 9.20160709) | dh-systemd to keep
+    compatibility with Ubuntu 16.04, which does not yet have that
+    of debhelper.
+  * Revert: d/rules: use new dh option names - Ubuntu 16.04 does not
+    have a debhelper that supports the new option, so use the old
+    ones for now.
+  * Drop librte-pmd-xenvirt17.11, deprecated upstream, and related
+    build-dependencies.
+  * Correctly parse upstream version when using ~rc instead of -rc.
+  * Update symbols files for 17.11.
+  * Backport testpmd-link-virtio.patch to link testpmd with the virtio
+    pmd to fix failure to run in VMs with virtio based interfaces
+  * Bump Standards-Version to 4.1.1, no changes.
+  * Add dependency on Python to dpdk-doc for diagram-generator.py and
+    pipeline-to-core-mapping.py. Fixes Lintian Error:
+    python-script-but-no-python-dep
+  * Fix librte-gro17.11 short description to mention -gro instead of
+    -eal. (Closes: #885832)
+  * dpdk: depend on python3-pyelftools since the scripts can work with either
+    version.
+  * dpdk-doc: depend only on python3 since the pipeline tools can work
+    with python3. (Closes: #883153)
+  * dpdk/dpdk-doc: change all scripts shebangs from python to python3.
+  * dpdk-doc: mark Python dependency with :any.
+  * Bump Standards-Version to 4.1.3 - no changes.
+  * d/control, d/changelog: use HTTPS for dpdk.org links.
+
+  [ Christian Ehrhardt ]
+  * d/control: improve dpdk-pmdinfo user experience by making
+    python-pyelftools a recommended dependency.
+  * d/control: add librte-pmd-octeontx17.11
+  * d/t/control: fix test dependencies for s390x (Closes: #882480).
+  * d/rules: make auto-loaded drivers dir versioned (LP: #1741244).
+    3rd party drivers should drop into the versioned directories now to show
+    their support for that version and to be autoloaded by librte_eal due
+    to that.
+
+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com>  Thu, 16 Nov 2017 14:17:03 +0100
+
+dpdk (17.08-1~git1) UNRELEASED; urgency=medium
+
+  [ Luca Boccassi ]
+  * New Upstream release 17.08.
+  * Add librte-gro package.
+  * Drop patches merged upstream: fix-power-default-config.patch,
+    mk-use-make-silent-flag-to-print-HTML-doc-version.patch,
+    mk-fix-excluding-.doctrees-when-installing-docs.patch.
+  * Refresh fix-vhost-user-socket-permission.patch to remove fuzz.
+  * Add build-dependency on libnuma-dev, mandatory since 17.08.
+  * Update mk-order-CFLAGS-so-that-ISCDIR-comes-before-IRTE_OUT.patch to
+    include librte-gro.
+  * debian/update-helper-symbols: do not append .0 to SOVERSION.
+  * debian/rules: use dpkg's DEBIAN_VERSION_UPSTREAM and DEB_HOST_*
+    variables instead of parsing and setting them manually.
+  * Update symbols files to reflect changes in the libraries.
+  * Switch to debian.org email address.
+  * Add librte-pmd-failsafe package.
+  * Drop mk-order-CFLAGS-so-that-ISCDIR-comes-before-IRTE_OUT.patch and
+    add mk-install-symlinks-before-build-step.patch which has the same
+    result but is much simpler and easier to maintain.
+  * Build-Depend on debhelper (>= 9.20160709) rather than dh-systemd as
+    latter is deprecated. Fixes Lintian Error:
+      build-depends-on-obsolete-package
+  * Build-Depend on the Python 3 version of the Sphinx packages to fix
+    Lintian Warning: build-depends-on-python-sphinx-only
+
+  [ Christian Ehrhardt ]
+  * d/rules: use new dh option names
+  * d/rules: properly enable dpdk systemd service
+
+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com>  Mon, 23 Oct 2017 12:11:16 +0200
+
+dpdk (17.05.1-1~git1) UNRELEASED; urgency=medium
+
+  [ Luca Boccassi ]
+  * New Upstream release 17.05.1.
+  * Fix reproducibility of librte-eal linuxapp.
+
+  [ Christian Ehrhardt ]
+  * d/rules: fix reference path of dpdk-devbind to match the new
+    subdirectory which is in /usr/share/dpdk/usertools
+  * Fix d/p/fix-vhost-user-socket-permission.patch: add mis-dropped
+    create_unix_socket call and reposition rte_eal_set_socket_permissions
+  * Fix d/p/fix-vhost-user-socket-permission.patch
+    - add accidenitally dropped create_unix_socket call
+    - reposition rte_eal_set_socket_permissions to match 17.05 handling of
+      vhost-user server sockets (and their late binding)
+
+  [ Luca Boccassi ]
+  * Mark build-dependencies needed for documentation builds with the <!nodoc>
+    build-profile to fully implement support for it.
+  * Bump Standards-Version to 4.1.0. Relevant changes are nodoc support and
+    build reprodicibility.
+
+ -- Luca Boccassi <luca.boccassi@gmail.com>  Mon, 03 Jul 2017 15:15:40 +0100
+
+dpdk (17.05-1~git1) UNRELEASED; urgency=medium
+
+  [ Christian Ehrhardt ]
+  * New Upstream release 17.05; For a full list of changes (LP: #1691661)
+    see http://dpdk.org/doc/guides/rel_notes/release_17_05.html
+    - adapt to use MAJOR_ABI configuration to avoid the sub-lib abi
+      version breakage of the past.
+    - add d/update-helper* to update d/control and d/*.symbols for new versions
+    - adapt to new build trigger and location of tests; provide further
+      test tools (testacl, testpipeline) together with the already
+      provided "test" tool in /usr/share/dpdk/test/ of dpdk-dev.
+      Note: testpmd is installed "officially" by install-sdk and therefore
+      stays separate from other test tools.
+    - updated library arch availability/dependency: librte-kni is
+      available on ppc64el; librte-pmd-i40e on all arches;
+      librte-pmd-fm10k gone on ppc64el
+    - package the 19 new sub-libs / pmds that are now built by default
+    - rename and update symbols files to match the update to DPDK 17.05
+
+  [ Luca Boccassi ]
+  * Rename libraries after ABI major version rather than source version.
+  * Always set CONFIG_RTE_MAJOR_ABI, even for custom config files as all the
+    packaging is tuned around it.
+  * Drop patches merged upstream and refresh
+    fix-vhost-user-socket-permission.patch
+  * Add patches to make the documentation and linker script builds fully
+    reproducible.
+  * Add patches to make the libraries and PMDs builds fully reproducible,
+    by making the listing order of headers, source files and objects in
+    the makefiles stable (via sorting).
+  * Install headers with arch-specific content in /usr/include/<multiarch>/dpdk
+    to make libdpdk-dev multiarch-compliant.
+    To ensure backward compatibility in x86_64, which is what most of the
+    consumers use, symlink x86_64 headers in /usr/include/dpdk.
+    pkg-config returns the arch-specific headers first so that other
+    architectures are still compatible.
+    Also create a full copy of the headers in the dpdk-dev SDK package, as it
+    does not support multiple levels of headers.
+
+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com>  Tue, 16 May 2017 15:38:17 +0200
+
+dpdk (16.11.2-1~git1) UNRELEASED; urgency=medium
+
+  [ Christian Ehrhardt ]
+  * Merge stable update to 16.11.2; For a list of changes
+    see http://dpdk.org/ml/archives/announce/2017-May/000131.html
+  * Dropped changes - patches that were included in 16.11.2 stable:
+    - d/p/kni-fix-build-with-kernel-4.11.patch
+    - d/p/nicvf-0002-net-thunderx-fix-32-bit-build.patch
+    - d/p/nicvf-0006-mk-fix-lib-filtering-when-linking-app.patch
+    - d/p/nicvf-0008-net-thunderx-fix-stats-access-out-of-bounds.patch
+    - d/p/nicvf-0010-net-thunderx-fix-deadlock-in-Rx-path.patch
+
+  [ Luca Boccassi ]
+  * Optionally generate libdpdk-dbgsym metapackage that depends on every
+    librte/PMD binary package's dbgsym. Keep it disabled by default, and
+    let users choose to enable it by passing dbgsym_meta via DEB_BUILD_OPTIONS.
+    Thanks Jan Blunck for the patch!
+  * Generate dependency list of libdpdk-dev to all librte and PMDs packages
+    dynamically at build time.
+  * Generate list of recommends for dpdk dynamically at build time.
+  * dpdk-modules-$KVERS: depend on same kernel version used to build rather than
+    just recommend - in-kernel API/ABI is not stable.
+  * Support for building packages for the new mempool framework has been added.
+    In 17.05 and newer a mempool framework was added, that has to be loaded
+    like a PMD. So any "plugin" will be linked in RTE_EAL_PMD_PATH just like
+    the PMDs. No mempool plugins are built for now, so it is currently a no-op.
+  * Drop libethdev4, librte-cryptodev1 and librte-eal2 transitional packages,
+    no longer needed.
+  * Fix some upstream documentation links in the packages metadata.
+    Thanks Chas Williams!
+  * Fix building debugging symbols for -dbgsym packages. Thanks Chas Williams!
+
+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com>  Thu, 08 Jun 2017 10:05:44 -0600
+
+dpdk (16.11.1-1~git1) UNRELEASED; urgency=medium
+
+  [ Christian Ehrhardt ]
+  * Merge stable update to 16.11.1; For a list of changes
+    see http://dpdk.org/ml/archives/dev/2017-March/058930.html
+  * dpdk.conf: add info about unwanted effects of multiple hugepage
+    mountpoints
+  * d/p/dpdk-dev-v3-eal-sPAPR-IOMMU-support-in-pci-probing-for-vfio-pci-
+    in-ppc64le.patch: sPAPR IOMMU based pci probing enabled for vfio-pci
+    devices.
+  * enable librte-pmd-i40e1 for ppc64el
+    - debian/control: enable arch onpackage
+    - d/p/dpdk-dev-v4-i40e-implement-vector-PMD-for-altivec.patch: add i40e
+      PMD / vector PMD implementation and enable by default on ppc64el
+  * fix library availability/dependency
+    - librte-kni is built on ppc64el, fix dependency from libdpdk-dev
+    - librte-pmd-fm10k1 is not built on ppc64el (empty pkg atm) adapt arch
+    - librte-pmd-i40e is built on all architectures now
+  * Fix up thunderx to make arm support useful on more devices (LP: #1691659)
+    - d/p/nicvf-00[01-10]* backports of 17.02/17.05 fixes for thunderx
+    - d/control: dependencies and package for librte-pmd-thunderx-nicvf
+    - d/librte-pmd-thunderx-nicvf1.symbols: tracking library symbols
+  * fix dpdk-rte-kni dkms issues with kernel 4.11 (LP: #1691830)
+    - d/p/kni-fix-build-with-kernel-4.11.patch: fix pci_enable_msix usage
+    - d/p/kni-fix-ethtool-build-with-kernel-4.11.patch: Use new signal header
+  * ensure man pages are bundled with executables on all architectures
+  * d/p/fix-vhost-user-socket-permission.patch: updated to work with newer
+    openvswitch versions
+
+  [ Luca Boccassi ]
+  * Simplify debian/rules by using upstream's install target
+    and Debian's multiarch dir. Thanks Jan Blunck!
+  * Clarify that only the kni and igb_uio kernel modules are
+    distributed exclusively under the GPL2 in debian/copyright
+  * Add new DEB_BUILD_OPTIONS "nodoc" to allow users to avoid
+    building the DPDK documentation
+  * Add new DEB_BUILD_OPTIONS "nostatic" to allow users to avoid
+    building the DPDK static libraries
+  * Add try-restart to dpdk.init script
+  * Update Standards-Version to 4.0.0
+
+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com>  Thu, 08 Dec 2016 16:58:37 +0100
+
+dpdk (16.11-1~git1) UNRELEASED; urgency=medium
+
+  [ Christian Ehrhardt ]
+  * Merge stable release 16.11 and adapt patches
+    - imported latest stable release from dpdk-16.11.tar.gz
+      stable release changelog at
+      http://dpdk.org/doc/guides-16.11/rel_notes/release_16_11.html
+    - Delete patches that are upstream:
+      - d/p/dpdk-dev-ppc-enable-*
+      - d/p/dpdk-dev-v2-*-4*
+      - d/p/rte-devel-build-env.patch
+      - d/p/rte-compile-pre-cppflags.patch
+      - d/p/make-load-devel-config-not-to-appear-as-executable.patch
+      - d/p/dpdk-dev-doc-fix-old-dpdk-nic-bind.py-references.patch
+      - d/p/fix-double-license-info.patch
+  * Added changes
+    - add qede pmd now built by default
+    - add new librte-net library
+    - update symbols files to match the new release
+    - make autotest dep8 test always pass (failed fatally on e.g. LP).
+      We want to stabilize and get more logs of different environments before
+      we can enable it as a gating test.
+    - Make dpdk-dev's ${RTE_SDK}/${RTE_TARGET}/lib symlink multiarch aware
+    - d/control: apply wrap and sort
+    - d/control: Make the python-pyelftools only a Suggests
+    - d/t/test-linkage: fix issues on non-x86 architectures
+    - provide older ABI levels via backward compatibility of new DPDK libraries
+      - d/control: add compat packages for old ABI versions
+      - d/rules: generate and use multiarch aware link files for the soname
+        mapping
+
+  [ Luca Boccassi ]
+  * Make dpdk suggest dpdk-doc (Closes: #847626)
+
+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com>  Thu, 08 Dec 2016 16:58:37 +0100
+
+dpdk (16.07.2-1~git1) UNRELEASED; urgency=medium
+
+  * Merge stable release 16.07.2 and adapt patches
+    - imported latest stable release from dpdk-16.07.2.tar.gz
+      stable release changelog at
+      http://dpdk.org/doc/guides-16.07/rel_notes/release_16_07.html
+    - Deleted:
+      - d/p/dpdk-dev-v2-kni-fix-build-with-kernel-4.8.patch
+      - d/p/fix-unusual-interpreter.patch
+      - d/p/dpdk-dev-examples-ip_pipeline-fix-pmd-driver-parameter.patch
+      - d/p/dpdk-dev-kni-fix-build-with-kernel-4.9.patch
+      - d/p/dpdk-dev-ppc-enable-7-7-examples-ip_pipeline-fix-lcore-mapping-for-
+        ppc64.patch
+    - Refreshed (only offset changes)
+      - d/p/dpdk-dev-ppc-enable-1-7-lpm-add-AltiVec-for-ppc64.patch
+      - d/p/dpdk-dev-ppc-enable-2-7-acl-add-AltiVec-for-ppc64.patch
+      - d/p/dpdk-dev-ppc-enable-4-7-sched-enable-on-ppc64le.patch
+      - d/p/dpdk-dev-ppc-enable-6-7-config-enable-packet-framework-on-
+        ppc64le.patch
+      - d/p/dpdk-dev-v2-2-4-doc-rendering-and-installation-of-man-pages.patch
+      - d/p/dpdk-dev-v2-3-4-doc-add-basic-invocation-info-for-dpdk-pmdinfo.patch
+      - d/p/dpdk-dev-v2-4-4-doc-add-basic-invocation-info-for-dpdk-devbind.patch
+
+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com>  Mon, 05 Dec 2016 07:08:01 +0100
+
+dpdk (16.07-2~git1) UNRELEASED; urgency=medium
+
+  * Team upload.
+
+  [ Christian Ehrhardt ]
+  * Fix d/p/fix-vhost-user-socket-permission.patch for dpdk 16.07
+    server/client sockets.
+  * d/control add python-elftools and hwdata dependencies to dpdk for the tool
+    dpdk-pmdinfo.
+  * d/rules utilize RTE_EAL_PMD_PATH to autoload pmd drivers
+    - d/dpdk-doc.README.Debian document usage of RTE_EAL_PMD_PATH
+    - d/control let the runtime of dpdk recommend the pmd drivers to make them
+      available for auto-probing devices.
+  * d/rules support DEB_BUILD_OPTIONS parallel
+  * d/rules bundle autotest as it is ready after build into dpdk-dev
+    to make it available for autopkgtest and likewise developers.
+  * enable dpdk autotests
+    - d/t/test-autotest enable autotests as dep8 test. These fail in many
+      build environments, so put them in an adt where required characteristics
+      can be specified
+
+  [ Gowrishankar Muthukrishnan ]
+  * d/p/dpdk-dev-examples-ip_pipeline-fix-pmd-driver-parameter.patch to make
+    ip_pipeline work properly with -d eal parameter
+  * Update to d/p/dpdk-dev-examples-ip_pipeline-fix-pmd-driver-parameter.patch
+    fixing dl_open issues.
+
+  [ Santiago R.R. ]
+  * debian/rules: Only export hardening related building HOST_/EXTRA flags
+    when dpkg-dev < 1.18.11. On newer dpkg-dev versions, dpkg-buildflags
+    handle them directly and are injected by gcc (6.x). Closes: #843685.
+
+  [ Luca Boccassi ]
+  * Fix DKMS build to use the requested kernel version rather than the running
+    one. (Closes: #843864)
+  * Fix kernel modules build failures due to the new -fPIE default by passing
+    -fno-PIE.
+  * Backport dpdk-dev-kni-fix-build-with-kernel-4.9.patch to fix kernel modules
+    build failures on Linux 4.9.
+  * Mark dpdk-doc as Multi-Arch: foreign
+
+ -- Santiago Ruano Rincón <santiagorr@riseup.net>  Wed, 09 Nov 2016 16:04:15 +0100
+
+dpdk (16.07-1) unstable; urgency=medium
+
+  [ Christian Ehrhardt ]
+  * Merge with upstream DPDK 16.07 release
+  * Cleanup Lintian Warnings
+    - d/p/fix-unusual-interpreter.patch fixes "W: dpdk-doc:
+      unusual-interpreter"
+    - d/p/fix-double-license-info.patch fixes "W: dpdk-rte-kni-dkms:
+      extra-license-file"
+  * Renamed d/p/ubuntu-fix-vhost-user-socket-permission.patch to
+    d/p/fix-vhost-user-socket-permission.patch
+  * Add lintian-overrides for: E: dpdk-dev: arch-dependent-file-in-usr-share
+    These binaries are part of the sdk and meant to be shipped with the sdk.
+  * d/p/dpdk-dev-doc-fix-old-dpdk-nic-bind.py-references.patch to fix the
+    docs in regard to 16.07 changes renaming dpdk_nic_bind
+  * d/p/make-load-devel-config-not-to-appear-as-executable.patch to avoid
+    accidentally executing as script and to fix unusual-interpreter lintian
+    warning.
+  * fix d/t/test-initscripts on more recent systemd environments
+  * enable dpdk for ppc64el
+    - add ppc64el arch to valid dpdk pmds and rte libraries
+    - select power config and machine for dpdk build system
+    - disable xen pmd for ppc64el
+    - d/tests: make tests compatible with ppc64el
+    - d/dpdk.conf, d/dpdk-init add 16M huge page support
+    - d/p/fix-power-default-config.patch enable bond PMD on ppc64el
+  * add man pages for installed binaries
+    - add backport of patches from upstream
+    - call generation of man pages in d/rules
+  * d/t/test-dkms retain dkms logs for debugging
+  * fix rte_kni dkms build with kernel >= 4.8
+    - d/p/dpdk-dev-v2-kni-fix-build-with-kernel-4.8.patch replaced macro with
+      its value in kni ethtool drivers.
+
+  [ Anders Roxell ]
+  * debian/control: add pciutils to the dpdk depends list, since lspci is used
+    by the devbind script
+
+  [ Luca Boccassi ]
+  * Add ${shlib:Depends} to dpdk-dev dependencies
+  * Install api and guides in dpdk-doc
+  * Convert debian/rules to new style DH targets
+  * Add Recommends: python to dpdk-doc since it ships python scripts among the
+    examples, fixes Lintian warning about missing python dependencies
+  * Fix typo in dpdk-doc.README.Debian, fixes "W: dpdk-doc:
+    spelling-error-in-readme-debian to to (duplicate word) to"
+  * Fix upstream rc versions by using "~" instead of "-". 16.07-rc1 evaluates
+    as newer than 16.07 which causes issues with Debian tools and Lintian
+    errors and warnings:
+    - W: libethdev4: latest-debian-changelog-entry-without-new-version
+    - E: libethdev4: symbols-file-contains-current-version-with-debian-revision
+      on symbol DPDK_16.04@DPDK_16.04 and 114 others
+  * Add lintian-overrides for: "W: dpdk-doc: embedded-javascript-library"
+  * Add optional binary kernel modules package, disabled by default (build with
+    DEB_BUILD_OPTIONS=kernel_modules to enable). If enabled will build kernel
+    modules against the local, current kernel version (override by adding
+    ksrc=<path/to/kernel/sources> to DEB_BUILD_OPTIONS) into a
+    dpdk-modules-<kernel version> package
+  * Set HOST_/EXTRA/CPP/C/LDFLAGS in d/rules so that all built objects pick up
+    all flags set by the dpkg environment, like hardening flags
+  * Add rte-compile-pre-cppflags.patch to make all DPDK objects pick up the
+    user specified or environment specified CPP/C/LDFLAGS.
+    Fixes Lintian warning:
+    - W: dpdk-dev: hardening-no-relro
+         usr/share/dpdk/x86_64-default-linuxapp-gcc/app/dpdk-pmdinfogen
+  * Add a brief HOWTO to debian/README.source with instructions to build the
+    packages, for CI systems and the like.
+  * Build with RTE_DEVEL_BUILD=n to avoid building test pmds with an rpath
+    hardcoded to the package build PATH. Fixes Lintian Error:
+    - E: dpdk: binary-or-shlib-defines-rpath usr/bin/dpdk-pdump
+         /home/lboccass/git/dpdk_deb/debian/build/shared-root/lib
+  * Fix d/watch file to point to fast.dpdk.org/rel
+  * Allow DPDK_CONFIG, RTE_MACHINE, RTE_TARGET overrides via DEB_BUILD_OPTIONS
+  * Initial Debian release. (Closes: #815760)
+  * Use ?= to allow env var overrides in d/rules
+  * Finalize changelog for upload to unstable.
+
+  [ Santiago RR ]
+  * improve debian/copyright
+  * remove duplicate entries from d/control
+  * debian/control:
+    - dpdk: recommends dkms packages (dpdk-igb-uio-dkms, dpdk-rte-kni-dkms) on
+      arm64 and suggest for other architectures.
+
+  [ Gowrishankar Muthukrishnan ]
+  * enable formerly disabled libraries in ppc64le config
+  * d/control provide now supported packages for ppc64le
+  * d/p/dpdk-dev-ppc-enable-* backports from dpdk to enable more features
+    for ppc64le
+
+ -- Luca Boccassi <luca.boccassi@gmail.com>  Tue, 27 Sep 2016 16:40:31 +0100
+
+dpdk (16.07~rc5-1) UNRELEASED; urgency=medium
+
+  [ Ricardo Salveti de Araujo ]
+  * Merge with upstream DPDK 16.07-rc5 release
+
+  [ Luca Boccassi ]
+  * Generate pkgconfig and ship it in libdpdk-dev
+  * Document use of dquilt for patches in debian/README.source
+
+ -- Ricardo Salveti de Araujo <rsalveti@rsalveti.net>  Tue, 26 Jul 2016 14:13:38 -0300
+
+dpdk (16.07~rc4-1) UNRELEASED; urgency=medium
+
+  * Merge with upstream DPDK 16.07-rc4 release
+    - Tools renamed, dpdk_nic_bind is now dpdk-devbind
+  * Adapt d/p/ubuntu-fix-vhost-user-socket-permission.patch for dpdk 16.07-rc4
+
+ -- Ricardo Salveti de Araujo <rsalveti@rsalveti.net>  Mon, 25 Jul 2016 13:38:13 -0300
+
+dpdk (16.07~rc3-1) UNRELEASED; urgency=medium
+
+  [ Christian Ehrhardt ]
+  * Merge with upstream DPDK 16.07-rc3 release
+  * droping patches/backports that are already upstream in DPDK 16.07-rc3
+    - d/p/ubuntu-fix-bond-symbol-export.patch
+    - d/p/ubuntu-backport-33-vhost-user-add-error-handling-for-fd-1023.patch
+  * adapt d/p/ubuntu-fix-vhost-user-socket-permission.patch for dpdk 16.07-rc3
+  * update symbols
+
+  [ Ricardo Salveti de Araujo ]
+  * debian/rules:
+    - Allow all make commands to be verbose
+    - Fix libdpdk-dev headers path
+  * Renaming package librte-pmd-e10001 to librte-pmd-e1000-1, to avoid mixing
+    package name with soversion (lintian package-name-doesnt-match-sonames)
+  * Adding package librte-pmd-bnxt1
+  * Merging symbols files, handling the arch differences inline instead
+
+  [ Anders Roxell ]
+  * debian/control: add libpcap-dev to libdpdk-dev's Depends list
+
+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com>  Tue, 19 Jul 2016 08:32:06 +0200
+
+dpdk (16.07~rc1-1) UNRELEASED; urgency=medium
+
+  [ Christian Ehrhardt ]
+  * Merge with upstream DPDK 16.07-rc1 release
+  * droping patches/backports that are already upstream in DPDK 16.07
+    - d/p/ubuntu-backport-39-lpm-fix-freeing-in-compatibility-mode.patch
+      This was formerly part of a combined patch that we dropped because the
+      majority is upstream (d/p/ubuntu-fix-lpm-use-after-free-and-leak.patch).
+    - d/p/ubuntu-backport-40-linking-fixes-stage-[1-4]-4.patch
+      d/p/ubuntu-backport-44-linking-cleanup.patch
+      Fixing underlinking and overlinking issues in apps and libraries.
+    - d/p/ubuntu-backport-41-fix-install-tar-1.29.patch
+      Fix issues with tar >=1.29 (Yakkety)
+    - d/p/ubuntu-backport-42-increase-default-logging-level.patch
+      avoid default debug messages causing a perf degradation
+    - d/p/ubuntu-backport-43-fix-level-type-retrieving.patch
+      Fix type retrieving which was broken in standard threads
+    - d/p/ubuntu-fix-xenvirt-support-dynamic-page-size.patch: fix build
+      failure on arm64
+  * droping patches/backports that are no more applicable
+    - d/p/ubuntu-backport-38-* was never accepted despite looking good.
+      Upstream discussion around proper successor started.
+  * keeping patches:
+    - d/p/ubuntu-backport-33-vhost-user-add-error-handling-for-fd-1023.patch
+      Was never accepted, Upstream discussion around proper successor started.
+  * adapt debian/* to upstream changes
+    - update symbols and ABI versions
+    - add librte-pdump1
+  * adding changes
+   - fix exported symbols of librte_pmd_bond (sent upstream, can be dropped
+     later)
+
+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com>  Wed, 06 Jul 2016 09:40:49 +0200
+
+dpdk (16.04-1) UNRELEASED; urgency=medium
+
+  [ Christian Ehrhardt ]
+  * Merge with upstream DPDK 16.04 release
+  * droping patches/backports that are already upstream in DPDK 16.04
+    - d/p/ubuntu-fix-doc-installpath.patch
+    - d/p/ubuntu-fix-testpmd-without-xen.patch
+    - d/p/ubuntu-fix-lpm-use-after-free-and-leak.patch
+    - d/p/ubuntu-backport-[01-32,34-35] backports for stability
+    - d/p/ubuntu-backport-[36-37] but keep doc and example changes in d/*
+  * droping patches for soname / linking fixups.
+    - Upstream now goes with proper soname/abi/api handling per sublib plus a
+      linker script.
+    - dropped d/p/ubuntu-combined-shared-lib-abiversion.patch
+    - dropped d/p/ubuntu-fix-library-linkage.patch
+  * keeping patches:
+    - d/p/ubuntu-backport-38-* fix for memory leak
+      this now applies as is, so changed from a modified backport to match the
+      post 16.04 upstream commit now.
+    - d/p/ubuntu-backport-33-vhost-user-add-error-handling-for-fd-1023.patch
+    - doc and example changes that were related to d/p/ubuntu-backport-[36-37]
+    - d/p/ubuntu-fix-vhost-user-socket-permission.patch adapted for dpdk-16.04:
+      In the new build system with sublibs the exposed function needs to be
+      listed in lib/librte_eal/linuxapp/eal/rte_eal_version.map
+  * adding upstream backports - can be dropped when merging DPDK 16.07.
+    - d/p/ubuntu-backport-39-lpm-fix-freeing-in-compatibility-mode.patch
+      This was formerly part of a combined patch that we dropped because the
+      majority is upstream (d/p/ubuntu-fix-lpm-use-after-free-and-leak.patch).
+    - d/p/ubuntu-backport-40-linking-fixes-stage-[1-4]-4.patch
+      d/p/ubuntu-backport-44-linking-cleanup.patch
+      Fixing underlinking and overlinking issues in apps and libraries.
+    - d/p/ubuntu-backport-41-fix-install-tar-1.29.patch
+      Fix issues with tar >=1.29 (Yakkety)
+    - d/p/ubuntu-backport-42-increase-default-logging-level.patch
+      avoid default debug messages causing a perf degradation
+    - d/p/ubuntu-backport-43-fix-level-type-retrieving.patch
+      Fix type retrieving which was broken in standard threads
+  * adapt to new build system
+    - drop enabling the following build config symbols as they no more exist
+        CONFIG_RTE_BUILD_COMBINE_LIBS
+    - Sub-Libraries are now packaged in a versioned package per library. That
+      allows consumers of dpdk to just depend on what they need. As well as
+      installation of multiple .so versions concurrently.
+    - added the hidden dependency of librte_eal to librte_mempool
+    - use dpkg-buildflags and properly enable hardening
+  * Adding DKMS package for rte_kni (LP: #1592786)
+
+  [ Ricardo Salveti ]
+  * Adding support for ARM64:
+    - debian/control: adding arm64 to the supported architecture list
+    - debian/rules: supporting dpdk config and machine for arm64
+    - d/p/ubuntu-fix-xenvirt-support-dynamic-page-size.patch: fix build
+      failure on arm64
+    - debian/dpdk-sdk-env.sh: generating the right RTE_TARGET during build
+      time, so we can also make it compatible with ARM64
+    - debian/tests: also making tests compatible with ARM64
+  * Adding DKMS package for igb_uio
+  * Build static dpdk with -fPIC so it can be used by shared libraries
+  * debian/copyright: fixing Canonical's copyright entry
+  * Renaming symbol files so they can match the right package
+  * Drop the arch specific symbol files, as they are identical
+
+  [ Anders Roxell ]
+  * debian/dpdk.init: add remote_fs (lintian)
+  * debian/control: fixing week-library-dev-dependency (lintian)
+
+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com>  Tue, 17 May 2016 14:23:21 +0200
+
+dpdk (2.2.0-0ubuntu9) yakkety; urgency=medium
+
+  * d/p/ubuntu-backport-[36-37] fix virtio issues (LP: #1570195):
+    - don't let DPDK initialize virtio devices still in use by the kernel
+    - this avoids conflicts between kernel and dpdk usage of those devices
+    - an admin now has to unbind/bind devices as on physical hardware
+    - this is in the dpdk 16.04 release and delta can then be dropped
+    - d/dpdk-doc.README.Debian update for changes in virtio-pci handling
+    - d/dpdk.interfaces update for changes in virtio-pci handling
+  * d/p/ubuntu-backport-38... fix for memory leak (LP: #1570466):
+    - call vhost_destroy_device on removing vhost user ports to fix memory leak
+    - this likely is in the dpdk 16.07 release and delta can then be dropped
+  * d/p/ubuntu-fix-vhost-user-socket-permission.patch fox (LP: #1546565):
+    - when vhost_user sockets are created they are owner:group of the process
+    - the DPDK api to create those has no way to specify owner:group
+    - to fix that without breaking the API and potential workaround code in
+      consumers of the library like openvswitch 2.6 for example. This patch
+      adds an EAL commandline option to specify user:group created vhost_user
+      sockets should have.
+
+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com>  Wed, 27 Apr 2016 07:52:48 -0500
+
+dpdk (2.2.0-0ubuntu7) xenial; urgency=medium
+
+  * Increase max_map_count after setting huge pages (LP: #1507921):
+    - The default config of 65530 would cause issues as soon as about 64GB or
+      more are used as 2M huge pages for dpdk.
+    - Increase this value to base+2*#hugepages to avoid issues on huge systems.
+  * d/p/ubuntu-backport-[28-32,34-35] backports for stability (LP: #1568838):
+     - these will be in the 16.04 dpdk release, delta can then be dropped.
+     - 5 fixes that do not change api/behaviour but fix serious issues.
+        - 01 f82f705b lpm: fix allocation of an existing object
+        - 02 f9bd3342 hash: fix multi-process support
+        - 03 1aadacb5 hash: fix allocation of an existing object
+        - 04 5d7bfb73 hash: fix race condition at creation
+        - 05 fe671356 vfio: fix resource leak
+        - 06 356445f9 port: fix ring writer buffer overflow
+        - 07 52f7a5ae port: fix burst size mask type
+  * d/p/ubuntu-backport-33-vhost-user-add-error-handling-for-fd-1023.patch
+     - this will likely be in dpdk release 16.07 and delta can then be dropped.
+     - fixes a crash on using fd's >1023 (LP: #1566874)
+  * d/p/ubuntu-fix-lpm-use-after-free-and-leak.patch fix lpm_free (LP: #1569375)
+     - the old patches had an error freeing a pointer which had no meta data
+     - that lead to a crash on any lpm_free call
+     - folded into the fix that generally covers the lpm allocation and free
+       weaknesses already (also there this particular mistake was added)
+
+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com>  Tue, 12 Apr 2016 16:13:47 +0200
+
+dpdk (2.2.0-0ubuntu6) xenial; urgency=medium
+
+  * d/dpdk-init fix handling of multiple huge page sizes (LP: #1557532):
+     - dpdk-init now ensures non-default-hugepage-size mountpoints are
+       available as well.
+     - extra mountpoints are only created if requested in dpdk.conf and not yet
+       available (e.g. by the admin).
+  * d/dpdk-init fix issues with unassigned devices (LP: #1558485):
+     - dpdk-init no more checks /sys/.../driver of the device unconditionally
+     - removed the superfluous tr call in that path
+  * d/p/ubuntu-fix-lpm-use-after-free-and-leak.patch lpm/lpm6 (LP: #1554009):
+     - lpm/lpm6 fix use after free on lpm[6]_create
+     - lpm/lpm6 fix missing frees of rules_tbl substructure
+     - lpm/lpm6 fix missing free of lpm due to early exit
+     - make RTE_LOG messages of the failed allocation unique
+  * d/p/ubuntu-backport-[01-26] backport for stability (LP: #1559981):
+     - these will be in the following dpdk release and delta can then be dropped
+     - 26 fixes that do not change api/behaviour but fix serious issues
+        - 01 d3a274ce app/testpmd: handle SIGINT and SIGTERM
+        - 02 308df2bf Handle SIGINT and SIGTERM in l3fwd.
+        - 03 da82ee17 tools: fix unbinding failure handling
+        - 04 16c1814c tools: support Python 3 in bind script
+        - 05 bb9f4085 tools: support binding to built-in kernel modules
+        - 06 6e7caa1a eal/linux: support built-in kernel modules
+        - 07 86f36ff9 mempool: fix leak when creation fails
+        - 08 ca67ed28 vhost: fix leak of fds and mmaps
+        - 09 fa11a8a7 port: fix crash for ring writer nodrop
+        - 10 04f36690 port: fix crash for ethdev writer nodrop
+        - 11 c7a4ff80 i40e: fix overflow
+        - 12 097e920c i40e: fix inverted check for no refcount
+        - 13 330aa319 i40e: fix VLAN filtering
+        - 14 9f44dd3d i40e/base: fix missing check for stopped admin queue
+        - 15 8a880736 i40e/base: fix driver load failure
+        - 16 7656a546 fm10k: fix VLAN flag in scattered Rx
+        - 17 c6fb0e55 pcap: fix captured frame length
+        - 18 6e027237 bonding: fix detach of bonded device
+        - 19 df3e8ad7 bonding: fix detach of slave devices
+        - 20 786c990a bonding: copy entire config structure in mode 4
+        - 21 6698820b bonding: do not ignore multicast in mode 4
+        - 22 8997a10b bonding: fix active slaves with no primary
+        - 23 7a7122ed bonding: do not activate slave twice
+        - 24 2186fff3 bonding: fix crash when no slave device
+        - 25 c680a4a8 virtio: fix crash in statistics functions
+        - 26 3b1e3e4e virtio: fix descriptors pointing to the same buffer
+  * d/p/ubuntu-backport-27-virtio-fix-restart.patch for (LP: #1559981):
+     - fixing re-initializing the ethdev as openvswitch-dpdk does in the
+       virtio pmd driver by moving the detection of already being initialized
+       from virtio_dev_close to virtio_dev_start/stop
+     - this will be in the following dpdk release and delta can then be dropped
+  * d/rules build with debuginfo (LP: #1560839):
+     - exporting CFLAGS for all dpdk build processes
+     - dh_strip will automatically and create -dbgsym packages accordingly
+
+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com>  Wed, 23 Mar 2016 10:34:50 +0100
+
+dpdk (2.2.0-0ubuntu5) xenial; urgency=medium
+
+  * d/t/test-initscripts fix issues regarding 1G hugepages
+     - the dep8 was already taking care of 1G hugepages being not supported in
+       some environments. But it was failing when supported, but not enough
+       memory available.
+
+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com>  Wed, 09 Mar 2016 17:19:24 +0000
+
+dpdk (2.2.0-0ubuntu4) xenial; urgency=medium
+
+  * harden d/dpdk-init for configuration issues (LP: #1551601):
+     - detect and warn about bad bus specifications.
+     - detect and warn about incomplete device specifications.
+     - detect and warn about non existing pci IDs.
+     - avoid failing when working with unassigned devices.
+     - d/t/test-initscripts now testing various misconfigs.
+     - d/t/test-initscripts now also verifying service status.
+  * d/dpdk-init d/dpdk.conf now also support 1G hugepages (LP: #1551767):
+     - detect and warn if 1G pages are not available but configured.
+     - d/t/test-initscripts now also testing hugepage allocations.
+     - d/dpdk.conf has an option to drop caches to incease the likeliness of
+       successful 1G hugepage allocations (default off).
+  * d/rules replaced uname -m with DEB_HOST_GNU_CPU (LP: #1551796):
+  * fix testpmd to run without Xen environment (LP: #1551752):
+     - upstream discussion is slow, but we need a fix now. We can drop this
+       and change to the upstream solution when it is available.
+  * avoid errors due to missing modules (LP: #1554397):
+     - d/dpdk-init gracefully warns about missing modules.
+     - d/control now suggests linux-image-generic.
+     - d/dpdk.interfaces has a comment that makes the user aware.
+  * d/dpdk-init fix failure loading vfio-pci (LP: #1554214):
+     - d/dpdk-init no more converts "-" to "_" to make vfio-pci work
+     - d/dpdk.interfaces enhanced comments and updated examples
+     - d/dpdk-doc.README.debian got extra notes about using some modules
+  * unify whitespace/tabs in packaging and scripts
+     - tabs/spaces to just spaces in d/dpdk-init and d/dpdk.init.
+     - few remaining spaces to tabs in d/rules
+  * d/t/test-* now satisfy shellcheck
+  * d/* fix various comments and guides to be more readable
+  * d/dpdk-init and d/copyright updated copyright information
+
+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com>  Wed, 09 Mar 2016 08:48:58 +0000
+
+dpdk (2.2.0-0ubuntu3) xenial; urgency=medium
+
+  * Guard dep8 tests against non supported platforms (LP: #1551158):
+    - d/t/control now avoids failing due to "dependencies are unsatisfiable"
+      when fetching packages. The packages architecture restrictions got added
+      to avoid that.
+    - d/t/check-dpdk-supported-arch.sh is called by all DPDK tests to ensure
+      the platform is supported. If not it skips the test.
+
+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com>  Mon, 29 Feb 2016 11:03:39 +0000
+
+dpdk (2.2.0-0ubuntu2) xenial; urgency=medium
+
+  [ Christian Ehrhardt ]
+  * fix libdpdk.so library linking (LP: #1547517)
+    - libdpdk.so now has proper linkage information (was underlinked)
+      Note: this can be dropped when moving to DPDK 2.3 with linker script
+            instead of combined shared lib.
+    - remove reference to extra linkage needed when building against -ldpdk
+      in dpdk-doc README.
+    - add dep8 d/t/test-linkage to verify linking dpdk works as expected.
+  * d/control remove ${shlibs:Depends} on package with no linked binary
+    avoiding dpkg-gencontrol build warning about unknown ${shlibs:Depends}.
+  * d/dpdk-doc.README.debian fix path to DPDK build environment variable
+    helper script in README file.
+  * Update VCS Info in d/control to include our repositories.
+
+  [  James Page ]
+  * d/*: wrap-and-sort.
+  * d/control: Trim trailing whitespace.
+
+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com>  Thu, 25 Feb 2016 16:07:21 +0000
+
+dpdk (2.2.0-0ubuntu1) xenial; urgency=low
+
+  * Merge from Upstream to DPDK 2.2
+    Remaining changes:
+    - Set soabi for the combined shared library
+  * Drop changes:
+    - configuring RTE_LIBNAME to dpdk as it is the upstream default now
+    - enabled formerly non building components as they build properly in 2.2
+    - d/p/ubunut-avoid-texlive-fonts-extra, d/control:
+      Replace use of DejaVuSansMono is no more needed as upstream changed the
+      font. Thereby we can drop our delta.
+    - d/p/ubuntu-fix-gcc5-ftbs.patch no more needed with DPDK 2.2
+  * Added changes
+    - Disable CONFIG_RTE_NEXT_ABI as required for packaging (git 506f51cc)
+    - Enable LIBRTE_PMD_PCAP which is useful for some DPDK testcase examples
+      this adds a build dependency to libpcap-dev
+    - Fully support DH_VERBOSE for build debugging convenience
+    - adapt to new make infrastructure of dpdk 2.2
+    - d/README.debian: convert into d/dpdk-doc.README.debian
+    - d/dpdk-doc.README.debian: update recommendations about sdk env variables
+    - d/dpdk-sdk-env.sh: now deployed in /usr/share/dpdk to be opt in
+    - enable XEN support for dpdk (LP: #1521289).
+
+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com>  Wed, 17 Feb 2016 09:29:28 +0100
+
+dpdk (2.0.0-0ubuntu3) xenial; urgency=medium
+
+  * Only generate HTML documentation, easing backports to 14.04 and
+    reducing the time to build and size of the -doc package (LP: #1524700).
+
+ -- James Page <james.page@ubuntu.com>  Thu, 10 Dec 2015 10:23:51 +0000
+
+dpdk (2.0.0-0ubuntu2) xenial; urgency=low
+
+  * d/p/ubunut-avoid-texlive-fonts-extra, d/control:
+    Replace use of DejaVuSansMono by courier and drop dependency on the
+    texlive-fonts-extra package (which is in universe).
+  * d/watch added to allow use of uscan to check for upstream releases.
+  * d/dpdk-init: fix error if bash variables could not be resolved that
+    appeared as "[: -gt: unexpected operator" (had no functional impact)
+  * d/dpdk-init:
+    Replace use of head and cut (in /usr/bin) commands with sed (in /bin)
+    while also adding /usr/bin to the PATH used on direct /etc/init.d/dpdk
+    invocation. The PATH is only updated to be on the safe side, there
+    should be no other commands from /usr/bin used (LP: #1516543).
+  * d/t/test-mountpoint: add dep8 test to cover the issue of LP #1517075.
+  * d/dpdk-dev.install: Copy the SDK makefiles into place (LP: #1517075).
+
+ -- Stefan Bader <stefan.bader@canonical.com>  Tue, 17 Nov 2015 11:50:15 +0100
+
+dpdk (2.0.0-0ubuntu1) wily; urgency=low
+
+  * Initial release (LP: #1487538)
+
+ -- Stefan Bader <stefan.bader@canonical.com>  Mon, 01 Jun 2015 18:46:38 +0200
diff --git a/debian/compat b/debian/compat
new file mode 100644 (file)
index 0000000..f599e28
--- /dev/null
@@ -0,0 +1 @@
+10
diff --git a/debian/control b/debian/control
new file mode 100644 (file)
index 0000000..46fecbf
--- /dev/null
@@ -0,0 +1,1705 @@
+Source: dpdk
+Priority: optional
+Maintainer: deb_dpdk Packagers <deb-dpdk@lists.fd.io>
+Uploaders: Luca Boccassi <bluca@debian.org>,
+           Christian Ehrhardt <christian.ehrhardt@canonical.com>,
+           Santiago Ruano Rincón <santiagorr@riseup.net>
+Build-Depends: debhelper (>= 10),
+               dh-python,
+               dkms,
+               doxygen <!nodoc>,
+               graphviz <!nodoc>,
+               inkscape <!nodoc>,
+               libbsd-dev,
+               libcap-dev,
+               libelf-dev,
+               libibverbs-dev (>= 16~),
+               libipsec-mb-dev [amd64],
+               libjansson-dev,
+               libpcap-dev,
+               libmnl-dev,
+               libnuma-dev,
+               libssl-dev,
+               meson (>= 0.41~),
+               pkg-config,
+               python3,
+               python3-sphinx <!nodoc>,
+               python3-sphinx-rtd-theme <!nodoc>,
+               texlive-fonts-recommended <!nodoc>,
+               texlive-latex-extra <!nodoc>,
+               zlib1g-dev,
+Standards-Version: 4.2.1
+Rules-Requires-Root: no
+Section: libs
+Homepage: https://www.dpdk.org
+Vcs-Git: https://gerrit.fd.io/r/deb_dpdk
+Vcs-Browser: https://gerrit.fd.io/r/gitweb?p=deb_dpdk.git
+
+Package: dpdk
+Section: admin
+Architecture: amd64 arm64 armhf i386 ppc64el
+Depends: hwdata,
+         lsb-base (>= 3.2-14),
+         pciutils,
+         ${misc:Depends},
+         ${python3:Depends},
+         ${shlibs:Depends}
+Recommends: ${librte:Recommends},
+            python3-pyelftools,
+Suggests: dpdk-doc,
+          dpdk-igb-uio-dkms (= ${binary:Version}),
+          dpdk-rte-kni-dkms (= ${binary:Version}),
+          linux-image-generic,
+Breaks: dpdk-dev (<< 18.11)
+Replaces: dpdk-dev (<< 18.11)
+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: oldlibs
+Architecture: all
+Depends: libdpdk-dev (>= ${source:Version}), ${misc:Depends},
+Description: transitional package
+ DPDK is a set of libraries for fast packet processing. Applications run
+ in user-space and communicate directly with dedicated network interfaces.
+ .
+ This is a transitional package. It can safely be removed.
+
+Package: dpdk-doc
+Section: doc
+Architecture: all
+Multi-Arch: foreign
+Build-Profiles: <!nodoc>
+Homepage: https://dpdk.org/doc/guides/index.html
+Depends: libjs-jquery, libjs-underscore, python3:any, ${misc:Depends}, ${python3:Depends}
+Recommends: ${python3:Recommends}
+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: dpdk-igb-uio-dkms
+Section: kernel
+Architecture: amd64 arm64 i386 ppc64el
+Depends: dkms,
+         libdpdk-dev (= ${binary:Version}),
+         make,
+         ${misc:Depends}
+Description: Data Plane Development Kit (igb uio dkms)
+ 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 source code for the igb_uio kernel module.
+
+Package: dpdk-rte-kni-dkms
+Section: kernel
+Architecture: amd64 arm64 i386 ppc64el
+Depends: dkms,
+         libdpdk-dev (= ${binary:Version}),
+         make,
+         ${misc:Depends}
+Description: Data Plane Development Kit (rte kni dkms)
+ 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 source code for the rte_kni kernel module.
+
+Package: libdpdk-dev
+Section: libdevel
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: libbsd-dev,
+         libpcap-dev,
+         libibverbs-dev,
+         libssl-dev,
+         zlib1g-dev,
+         ${librte:Depends},
+         ${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.
+
+Package: librte-bbdev18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/api/rte__bbdev_8h.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-bbdev runtime library)
+ 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 for librte_bbdev.
+
+Package: librte-ethdev18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/api/rte__ethdev_8h.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (libethdev runtime library)
+ 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 for libethdev.
+
+Package: librte-acl18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/api/rte__acl_8h.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-acl runtime library)
+ 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 for librte_acl.
+
+Package: librte-bus-dpaa18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Description: Data Plane Development Kit (librte_bus_dpaa runtime library)
+ 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 for librte_bus_dpaa.
+
+Package: librte-bus-fslmc18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Description: Data Plane Development Kit (librte_bus_fslmc runtime library)
+ 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 for librte_bus_fslmc.
+
+Package: librte-bus-pci18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Description: Data Plane Development Kit (librte_bus_pci runtime library)
+ 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 for librte_bus_pci.
+
+Package: librte-bus-vdev18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Description: Data Plane Development Kit (librte_bus_vdev runtime library)
+ 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 for librte_bus_vdev.
+
+Package: librte-bus-vmbus18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Description: Data Plane Development Kit (librte_bus_vmbus runtime library)
+ 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 for librte_bus_vmbus.
+
+Package: librte-bus-ifpga18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/rawdevs/ifpga_rawdev.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Description: Data Plane Development Kit (librte_bus_ifpga runtime library)
+ 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 for librte_bus_ifpga.
+
+Package: librte-pmd-ifc18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/nics/ifc.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Description: Data Plane Development Kit (librte_pmd_ifc runtime library)
+ 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 for librte_pmd_ifc.
+
+Package: librte-cfgfile18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/api/rte__cfgfile_8h.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-cfgfile runtime library)
+ 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 for librte_cfgfile.
+
+Package: librte-cmdline18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/api/cmdline_8h.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-cmdline runtime library)
+ 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 for librte_cmdline.
+
+Package: librte-cryptodev18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/api/rte__cryptodev_8h.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-cryptodev runtime library)
+ 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 for librte_cryptodev.
+
+Package: librte-distributor18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/api/rte__distributor_8h.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-distributor runtime library)
+ 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 for librte_distributor.
+
+Package: librte-eal18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/api/rte__eal_8h.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-eal runtime library)
+ 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 for librte_eal.
+
+Package: librte-flow-classify18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/api/rte__flow__classify_8h.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Description: Data Plane Development Kit (librte-flow-classify runtime library)
+ 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 for librte_flow_classify.
+
+Package: librte-gro18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/api/rte__gro_8h.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Description: Data Plane Development Kit (librte-gro runtime library)
+ 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 for librte_gro.
+
+Package: librte-gso18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/api/rte__gso_8h.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Description: Data Plane Development Kit (librte-gso runtime library)
+ 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 for librte_gso.
+
+Package: librte-hash18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/api/rte__hash_8h.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-hash runtime library)
+ 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 for librte_hash.
+
+Package: librte-ip-frag18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/api/rte__ip__frag_8h.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-ip-frag runtime library)
+ 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 for librte_ip_frag.
+
+Package: librte-jobstats18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/api/rte__jobstats_8h_source.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-jobstats runtime library)
+ 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 for librte_jobstats.
+
+Package: librte-kni18.11
+Architecture: amd64 arm64 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/api/rte__kni_8h.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-kni runtime library)
+ 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 for librte_kni.
+
+Package: librte-kvargs18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/api/rte__kvargs_8h.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-kvargs runtime library)
+ 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 for librte_kvargs.
+
+Package: librte-lpm18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/api/rte__lpm_8h.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-lpm runtime library)
+ 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 for librte_lpm.
+
+Package: librte-mbuf18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/api/rte__mbuf_8h.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-mbuf2 runtime library)
+ 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 for librte_mbuf.
+
+Package: librte-member18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/api/rte__member_8h.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-member runtime library)
+ 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 for librte_member.
+
+Package: librte-mempool18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/api/rte__mempool_8h.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-mempool runtime library)
+ 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 for librte_mempool.
+
+Package: librte-mempool-bucket18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-mempool-bucket runtime library)
+ 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 for librte_mempool_bucket.
+
+Package: librte-meter18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/api/rte__meter_8h.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-meter runtime library)
+ 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 for librte_meter.
+
+Package: librte-pci18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/api/rte__pci_8h.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Description: Data Plane Development Kit (librte_pci runtime library)
+ 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 for librte_pci.
+
+Package: librte-pipeline18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/api/rte__pipeline_8h.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pipeline runtime library)
+ 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 for librte_pipeline.
+
+Package: librte-rawdev18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/api/rte__rawdev_8h.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-rawdev runtime library)
+ 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 for librte_rawdev.
+
+Package: librte-net18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/prog_guide/overview.html?highlight=librte_net#librte-net
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-net runtime library)
+ 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 for librte_net.
+ .
+ The librte_net library is a collection of IP protocol definitions and
+ convenience macros. It is based on code from the FreeBSD* IP stack and
+ contains protocol numbers (for use in IP headers), IP-related macros,
+ IPv4/IPv6 header structures and TCP, UDP and SCTP header structures.
+
+Package: librte-bpf18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/prog_guide/bpf_lib.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-bpf runtime library)
+ 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 for librte_bpf.
+ .
+ The DPDK provides an BPF library that gives the ability to load and
+ execute Enhanced Berkeley Packet Filter (eBPF) bytecode within user-space
+ dpdk application.
+
+Package: librte-compressdev18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/compressdevs/isal.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-compressdev runtime library)
+ 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 for librte_compressdev.
+ .
+ Provides poll mode compression & decompression driver support.
+
+Package: librte-pmd-af-packet18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/browse/dpdk/tree/drivers/net/af_packet
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-af-packet runtime library)
+ 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 for librte_pmd_af_packet.
+
+Package: librte-pmd-bnx2x18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://doc.dpdk.org/guides/nics/bnx2x.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-bnx2x runtime library)
+ 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 for librte_pmd_bnx2x.
+
+Package: librte-pmd-bnxt18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://doc.dpdk.org/guides/nics/bnxt.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-bnxt runtime library)
+ 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 for librte_pmd_bnxt.
+
+Package: librte-pmd-bond18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/prog_guide/link_bonding_poll_mode_drv_lib.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-bond runtime library)
+ 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 for librte_pmd_bond.
+
+Package: librte-pmd-caam-jr18.11
+Architecture: amd64 arm64 i386 ppc64el
+Multi-Arch: same
+Homepage: https://doc.dpdk.org/guides/cryptodevs/caam_jr.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-caam-jr runtime library)
+ 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 for librte_pmd_caam_jr.
+
+Package: librte-pmd-ccp18.11
+Architecture: amd64 arm64 i386 ppc64el
+Multi-Arch: same
+Homepage: https://doc.dpdk.org/guides/cryptodevs/ccp.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-cpp runtime library)
+ 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 for librte_pmd_ccp.
+
+Package: librte-pmd-cxgbe18.11
+Architecture: amd64 arm64 i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/nics/cxgbe.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-cxgbe runtime library)
+ 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 for librte_pmd_cxgbe.
+
+Package: librte-pmd-dpaa18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/nics/dpaa.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-dpaa runtime library)
+ 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 for librte_pmd_dpaa.
+
+Package: librte-pmd-dpaa-sec18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/nics/dpaa.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-dpaa runtime library)
+ 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 for librte_pmd_dpaa_sec.
+
+Package: librte-pmd-dpaa-event18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/nics/dpaa.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-dpaa runtime library)
+ 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 for librte_pmd_dpaa_event.
+
+Package: librte-pmd-dpaa2-18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/nics/dpaa2.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-dpaa runtime library)
+ 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 for librte_pmd_dpaa2.
+
+Package: librte-pmd-dpaa2-cmdif18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/nics/dpaa2.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-dpaa runtime library)
+ 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 for librte_pmd_dpaa2_cmdif.
+
+Package: librte-pmd-dpaa2-event18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/nics/dpaa2.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-dpaa runtime library)
+ 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 for librte_pmd_dpaa2_event.
+
+Package: librte-pmd-dpaa2-qdma18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/nics/dpaa2.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-dpaa runtime library)
+ 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 for librte_pmd_dpaa2-qdma.
+
+Package: librte-pmd-dpaa2-sec18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/nics/dpaa2.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-dpaa runtime library)
+ 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 for librte_pmd_dpaa2_sec.
+
+Package: librte-pmd-dsw-event18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/eventdevs/dsw.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-dsw-event runtime library)
+ 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 for librte_dsw_event.
+
+Package: librte-pmd-e1000-18.11
+Architecture: amd64 arm64 i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/nics/e1000em.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-e1000 runtime library)
+ 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 for librte_pmd_e1000.
+
+Package: librte-pmd-enetc18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/nics/enetc.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-enetc runtime library)
+ 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 for librte_pmd_enetc.
+
+Package: librte-pmd-ena18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/nics/ena.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-ena runtime library)
+ 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 for librte_pmd_ena.
+
+Package: librte-pmd-enic18.11
+Architecture: amd64 arm64 i386
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/nics/enic.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-enic runtime library)
+ 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 for librte_pmd_enic.
+
+Package: librte-pmd-failsafe18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/nics/fail_safe.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-failsafe runtime library)
+ 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 for librte_pmd_failsafe.
+
+Package: librte-pmd-fm10k18.11
+Architecture: amd64 i386
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/nics/fm10k.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-fm10k runtime library)
+ 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 for librte_pmd_fm10k.
+
+Package: librte-pmd-i40e18.11
+Architecture: amd64 arm64 i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/nics/i40e.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-i40e runtime library)
+ 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 for librte_pmd_i40e.
+
+Package: librte-pmd-ixgbe18.11
+Architecture: amd64 arm64 i386
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/nics/ixgbe.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-ixgbe runtime library)
+ 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 for librte_pmd_ixgbe.
+
+Package: librte-pmd-netvsc18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://doc.dpdk.org/guides/nics/netvsc.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Description: Data Plane Development Kit (librte-pmd-netvsc runtime library)
+ 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 for librte_pmd_netvsc.
+
+Package: librte-pmd-null-crypto18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/cryptodevs/null.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-null-crypto runtime library)
+ 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 for librte_pmd_null_crypto.
+
+Package: librte-pmd-null18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/browse/dpdk/tree/drivers/net/null
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-null runtime library)
+ 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 for librte_pmd_null.
+
+Package: librte-pmd-pcap18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/nics/pcap_ring.html#libpcap-based-pmd
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-pcap runtime library)
+ 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 for librte_pmd_pcap.
+
+Package: librte-pmd-openssl18.11
+Architecture: amd64 arm64 i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/cryptodevs/openssl.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-openssl runtime library)
+ 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 for librte_pmd_openssl.
+
+Package: librte-pmd-ring18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/nics/pcap_ring.html#rings-based-pmd
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-ring runtime library)
+ 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 for librte_pmd_ring.
+
+Package: librte-pmd-softnic18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Breaks: libdpdk16.11
+Replaces: libdpdk16.11
+Description: Data Plane Development Kit (librte-pmd-softnic runtime library)
+ 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 for librte_pmd_softnic.
+
+Package: librte-pmd-vhost18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/nics/vhost.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-vhost runtime library)
+ 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 for librte_pmd_vhost.
+
+Package: librte-pmd-virtio18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/nics/virtio.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-virtio runtime library)
+ 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 for librte_pmd_virtio.
+
+Package: librte-pmd-vmxnet3-18.11
+Architecture: amd64 arm64 i386
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/nics/vmxnet3.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-vmxnet3 runtime library)
+ 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 for librte_pmd_vmxnet3.
+
+Package: librte-pmd-zlib18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://doc.dpdk.org/guides/compressdevs/zlib.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-zlib runtime library)
+ 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 for librte_pmd_zlib.
+
+Package: librte-pmd-qat18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://doc.dpdk.org/guides/cryptodevs/qat.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Description: Data Plane Development Kit (librte-pmd-qat runtime library)
+ 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 for librte_pmd_qat.
+
+Package: librte-pmd-qede18.11
+Architecture: amd64 arm64 i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/nics/qede.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-qede runtime library)
+ 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 for librte_pmd_qede which is
+ The base driver is the backend module for the QLogic FastLinQ QL4xxxx
+ 25G/40G CNA family of adapters as well as their virtual functions (VF)
+ in SR-IOV context.
+
+Package: librte-port18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/api/rte__port_8h.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-port runtime library)
+ 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 for librte_port.
+
+Package: librte-power18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/api/rte__power_8h.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-power runtime library)
+ 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 for librte_power.
+
+Package: librte-reorder18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/api/rte__reorder_8h.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-reorder runtime library)
+ 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 for librte_reorder.
+
+Package: librte-ring18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/api/rte__ring_8h.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte_ring runtime library)
+ 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 for librte_ring.
+
+Package: librte-sched18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/api/rte__sched_8h.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte_sched runtime library)
+ 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 for librte_sched.
+
+Package: librte-security18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/api/rte__security_8h.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte_security runtime library)
+ 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 for librte_security.
+
+Package: librte-table18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/api/rte__table_8h.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte_table runtime library)
+ 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 for librte_table.
+
+Package: librte-telemetry18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/api/rte__telemetry_8h.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte_telemetry runtime library)
+ 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 for librte_telemetry.
+
+Package: librte-timer18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/api/rte__timer_8h.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte_timer runtime library)
+ 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 for librte_timer.
+
+Package: librte-vhost18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/api/rte__vhost_8h.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte_vhost runtime library)
+ 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 for librte_vhost.
+
+Package: librte-pdump18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte_pdump runtime library)
+ 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 for librte_pdump.
+
+Package: librte-bitratestats18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte_bitratestats runtime library)
+ 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 for librte_bitratestats.
+
+Package: librte-efd18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte_efd runtime library)
+ 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 for librte_efd.
+
+Package: librte-eventdev18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte_eventdev runtime library)
+ 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 for librte_eventdev.
+
+Package: librte-latencystats18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte_latencystats runtime library)
+ 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 for librte_latencystats.
+
+Package: librte-mempool-dpaa18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/nics/dpaa.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte_mempool_dpaa runtime library)
+ 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 for librte_mempool_dpaa.
+
+Package: librte-mempool-dpaa2-18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/nics/dpaa2.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte_mempool_dpaa2 runtime library)
+ 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 for librte_mempool_dpaa2.
+
+Package: librte-mempool-octeontx18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte_mempool_octeontx runtime library)
+ 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 for librte_mempool_octeontx.
+
+Package: librte-mempool-ring18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte_mempool_ring runtime library)
+ 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 for librte_mempool_ring.
+
+Package: librte-mempool-stack18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte_mempool_stack runtime library)
+ 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 for librte_mempool_stack.
+
+Package: librte-metrics18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte_metrics runtime library)
+ 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 for librte_metrics.
+
+Package: librte-pmd-aesni-gcm18.11
+Architecture: amd64
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte_pmd_aesni_gcm runtime library)
+ 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 for librte_pmd_aesni_gcm.
+
+Package: librte-pmd-aesni-mb18.11
+Architecture: amd64
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte_pmd_aesni_mb runtime library)
+ 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 for librte_pmd_aesni_mb.
+
+Package: librte-pmd-ark18.11
+Architecture: amd64 arm64 i386 ppc64el
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte_pmd_ark runtime library)
+ 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 for librte_pmd_ark.
+
+Package: librte-pmd-avf18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte_pmd_avf runtime library)
+ 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 for librte_pmd_avf.
+
+Package: librte-pmd-avp18.11
+Architecture: amd64
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/nics/avp.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte_pmd_avp runtime library)
+ 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 for librte_pmd_avp.
+
+Package: librte-pmd-crypto-scheduler18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte_pmd_crypto_scheduler runtime library)
+ 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 for librte_pmd_crypto_scheduler.
+
+Package: librte-pmd-kni18.11
+Architecture: amd64 arm64 ppc64el
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte_pmd_kni runtime library)
+ 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 for librte_pmd_kni.
+
+Package: librte-pmd-liquidio18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte_pmd_liquidio runtime library)
+ 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 for librte_pmd_liquidio.
+
+Package: librte-pmd-nfp18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte_pmd_nfp runtime library)
+ 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 for librte_pmd_nfp.
+
+Package: librte-common-cpt18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte_common_cpt runtime library)
+ 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 for librte_common_cpt.
+
+Package: librte-common-dpaax18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte_common_dpaax runtime library)
+ 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 for librte_common_dpaax.
+
+Package: librte-common-octeontx18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte_mempool_octeontx runtime library)
+ 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 for librte_common_octeontx.
+
+Package: librte-pmd-octeontx-event18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte_pmd_octeontx_event runtime library)
+ 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 for librte_pmd_octeontx_event.
+
+Package: librte-pmd-octeontx-compress18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Description: Data Plane Development Kit (librte_pmd_octeontx_compress runtime library)
+ 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 for librte_pmd_octeontx_compress.
+
+Package: librte-pmd-octeontx-crypto18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Description: Data Plane Development Kit (librte_pmd_octeontx_crypto runtime library)
+ 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 for librte_pmd_octeontx_crypto.
+
+Package: librte-pmd-octeontx18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte_pmd_octeontx runtime library)
+ 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 for librte_pmd_octeontx.
+
+Package: librte-pmd-opdl-event18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte_pmd_opdl_event runtime library)
+ 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 for librte_pmd_opdl_event.
+
+Package: librte-pmd-sfc18.11
+Architecture: amd64
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte_pmd_sfc runtime library)
+ 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 for librte_pmd_sfc.
+
+Package: librte-pmd-skeleton-event18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte_pmd_skeleton_event runtime library)
+ 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 for librte_pmd_skeleton_event.
+
+Package: librte-pmd-sw-event18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte_pmd_sw_event runtime library)
+ 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 for librte_pmd_sw_event.
+
+Package: librte-pmd-tap18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte_pmd_tap runtime library)
+ 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 for librte_pmd_tap.
+
+Package: librte-pmd-thunderx18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte_pmd_thunderx runtime library)
+ 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 for librte_pmd_thunderx.
+
+Package: librte-pmd-mlx4-18.11
+Architecture: amd64 arm64 i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/nics/mlx4.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-mlx4 runtime library)
+ 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 for librte-pmd-mlx4.
+
+Package: librte-pmd-mlx5-18.11
+Architecture: amd64 arm64 i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/nics/mlx5.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-mlx5 runtime library)
+ 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 for librte-pmd-mlx5.
+
+Package: librte-pmd-bbdev-null18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/bbdevs/null.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-bbdev-null runtime library)
+ 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 for librte-pmd-bbdev-null.
+
+Package: librte-pmd-skeleton-rawdev18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-skeleton-rawdev runtime library)
+ 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 for librte-pmd-skeleton-rawdev.
+
+Package: librte-pmd-vdev-netvsc18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/nics/vdev_netvsc.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-vdev-netvsc runtime library)
+ 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 for librte-pmd-vdev-netvsc.
+
+Package: librte-pmd-atlantic18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/nics/atlantic.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-atlantic runtime library)
+ 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 for librte-pmd-atlantic.
+
+Package: librte-pmd-axgbe18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/nics/axgbe.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-axgbe runtime library)
+ 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 for librte-pmd-axgbe.
+
+Package: librte-pmd-ifpga-rawdev18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/rawdevs/ifpga_rawdev.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-ifpga-rawdev runtime library)
+ 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 for librte-pmd-ifpga-rawdev.
+
+Package: librte-pmd-virtio-crypto18.11
+Architecture: amd64 arm64 armhf i386 ppc64el
+Multi-Arch: same
+Homepage: https://dpdk.org/doc/guides/cryptodevs/virtio.html
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Conflicts: libdpdk0
+Description: Data Plane Development Kit (librte-pmd-virtio-crypto runtime library)
+ 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 for librte-pmd-virtio-crypto.
+
diff --git a/debian/control.modules.in b/debian/control.modules.in
new file mode 100644 (file)
index 0000000..8814154
--- /dev/null
@@ -0,0 +1,14 @@
+Package: dpdk-modules-#KVERS#
+Section: kernel
+Architecture: amd64 arm64 i386
+Depends: linux-image-#KVERS# #KDREV#
+Provides: dpdk-modules
+Conflicts: dpdk-igb-uio-dkms, dpdk-rte-kni-dkms
+Built-Using: ${built:using:kernel}
+Description: Data Plane Development Kit (rte kni, igb uio modules)
+ 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 source code for the igb_uio kernel module.
+ .
+ This package provides the kernel drivers for userspace networking.
+ Includes Intel DPDK kernel modules.
diff --git a/debian/copyright b/debian/copyright
new file mode 100644 (file)
index 0000000..4cda3ce
--- /dev/null
@@ -0,0 +1,138 @@
+Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Upstream-Name: dpdk
+Source: https://dpdk.org
+
+Files: *
+Copyright: 2008-2014 Cisco Systems, Inc.
+           2012-2014 6WIND S.A.
+           1999-2016 Intel Corporation.
+           2010-2013 Tilera Corporation.
+           2012-2016 Mellanox.
+           2007      VMware, Inc.
+           2007      Nuova Systems, Inc.
+           2014      IBM Corporation.
+           and many other contributors.
+License: BSD-3-clause
+
+Files:
+ lib/librte_eal/linuxapp/igb_uio/*
+ lib/librte_eal/linuxapp/kni/*
+Copyright: 2007-2016, Intel Corporation
+           2006-2007 Myricom, Inc. for some LRO specific code
+License: GPL-2
+
+Files: drivers/net/enic/*
+Copyright: 2007, Nuova Systems, Inc.
+           2008-2016, Cisco Systems, Inc.
+License: BSD-2-clause
+
+Files:
+ lib/librte_eal/common/include/rte_pci_dev_*.h
+ lib/librte_eal/linuxapp/xen_dom0/*
+ lib/librte_vhost/eventfd_link/eventfd_link.h
+ drivers/crypto/qat/qat_adf/*
+Copyright: 2010-2016, Intel Corporation.
+License: BSD-3-clause or GPL-2
+
+Files:
+ lib/librte_eal/bsdapp/eal/include/exec-env/rte_dom0_common.h
+ lib/librte_eal/linuxapp/eal/include/exec-env/rte_dom0_common.h
+ lib/librte_eal/linuxapp/eal/include/exec-env/rte_kni_common.h
+Copyright: 2007-2014, Intel Corporation.
+License: BSD-3-clause or LGPL-2.1
+
+Files: lib/librte_compat/rte_compat.h
+ drivers/net/vmxnet3/base/upt1_defs.h
+ drivers/net/vmxnet3/base/vmxnet3_defs.h
+ scripts/validate-abi.sh
+Copyright: 2015, Neil Horman <nhorman@tuxdriver.com>
+           2007, VMware, Inc.
+License: BSD-2-clause
+
+Files: buildtools/pmdinfogen/*
+Copyright: 2016, Neil Horman <nhorman@tuxdriver.com>
+License: GPL-2
+
+Files: debian/*
+Copyright: 2015, 2016 Canonical Ltd.
+License: GPL-3
+
+Files: debian/kernel-version
+       debian/prep-modules
+Copyright: 2009-2016 Andreas Beckmann <anbe@debian.org>
+           2010-2016 Russ Allbery <rra@debian.org>
+License: GPL-2.0+
+
+License: GPL-2
+ On Debian systems, the complete text of the GNU General
+ Public License version 2 can be found in "/usr/share/common-licenses/GPL-2".
+
+License: GPL-2.0+
+ 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.
+ .
+ On Debian systems, the complete text of the GNU General Public
+ License version 2 can be found in "/usr/share/common-licenses/GPL-2".
+
+License: GPL-3
+ On Debian systems, the complete text of the GNU General
+ Public License version 3 can be found in "/usr/share/common-licenses/GPL-3".
+
+License: LGPL-2.1
+ On Debian systems, the complete text of the GNU Library General Public
+ License can be found in the file `/usr/share/common-licenses/LGPL-2.1'.
+
+License: BSD-2-clause
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions
+ are met:
+ .
+ 1. Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+ .
+ 2. Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in
+ the documentation and/or other materials provided with the
+ distribution.
+ .
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ POSSIBILITY OF SUCH DAMAGE.
+
+License: BSD-3-clause
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions
+ are met:
+ .
+ * Redistributions of source code must retain the above copyright
+   notice, this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright
+   notice, this list of conditions and the following disclaimer in
+   the documentation and/or other materials provided with the
+   distribution.
+ * Neither the name of Intel Corporation nor the names of its
+   contributors may be used to endorse or promote products derived
+   from this software without specific prior written permission.
+ .
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/debian/dpdk-doc.README.Debian b/debian/dpdk-doc.README.Debian
new file mode 100644 (file)
index 0000000..0e3866a
--- /dev/null
@@ -0,0 +1,64 @@
+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 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
+
+librte-pmd-* and DPDK PMD autoloading:
+
+PMD driver autoloading. DPDK since its split into several libraries does not
+have all PMD drivers available by default. One always can use EAL argument -d
+to provide a path to an extra .so file.
+TO ease daily usage RTE_EAL_PMD_PATH is set to
+/usr/lib/$(shell dpkg-architecture -qDEB_HOST_MULTIARCH)/dpdk-pmds/.
+Each librte-pmd-* package will place a symlink in there which makes DPDK load
+and register it as PMD on startup.
+This can also be used to globally enable extra PMD drivers as you can link
+self-provided .so files in there to be considered.
+
+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com>  Thu, 29 Sep 2016 13:04:47 +0200
diff --git a/debian/dpdk-doc.install b/debian/dpdk-doc.install
new file mode 100644 (file)
index 0000000..1b60d12
--- /dev/null
@@ -0,0 +1,4 @@
+obj-*/doc/api/api usr/share/doc/dpdk
+obj-*/doc/guides/guides usr/share/doc/dpdk
+doc/guides/custom.css usr/share/doc/dpdk/guides/_static/css
+examples usr/share/dpdk
diff --git a/debian/dpdk-doc.lintian-overrides b/debian/dpdk-doc.lintian-overrides
new file mode 100644 (file)
index 0000000..7da34da
--- /dev/null
@@ -0,0 +1 @@
+dpdk-doc: embedded-javascript-library
diff --git a/debian/dpdk-igb-uio-dkms.dkms.in b/debian/dpdk-igb-uio-dkms.dkms.in
new file mode 100644 (file)
index 0000000..7e6ed2b
--- /dev/null
@@ -0,0 +1,7 @@
+PACKAGE_NAME="dpdk-igb-uio"
+PACKAGE_VERSION="#MODULE_VERSION#"
+BUILT_MODULE_NAME[0]="igb_uio"
+MAKE="make -C $kernel_source_dir M=$dkms_tree/$PACKAGE_NAME/$PACKAGE_VERSION/build MODULE_CFLAGS='-I/usr/include/@@DEB_HOST_MULTIARCH@@/dpdk -include /usr/include/@@DEB_HOST_MULTIARCH@@/dpdk/rte_config.h -I/usr/include/dpdk -fno-PIE' modules"
+CLEAN="make -C $kernel_source_dir M=$dkms_tree/$PACKAGE_NAME/$PACKAGE_VERSION/build clean"
+DEST_MODULE_LOCATION[0]="/updates/dkms"
+AUTOINSTALL="YES"
diff --git a/debian/dpdk-init b/debian/dpdk-init
new file mode 100755 (executable)
index 0000000..3938a3b
--- /dev/null
@@ -0,0 +1,255 @@
+#!/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="/usr/bin/dpdk-devbind.py"
+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_16M_PAGES}" -a -z "$(get_hugetlbfs_mountpoint '16M')" ]; then
+        _mount_hugetlbfs 16M
+    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-16384kB" "$NR_16M_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
+
diff --git a/debian/dpdk-rte-kni-dkms.dkms.in b/debian/dpdk-rte-kni-dkms.dkms.in
new file mode 100644 (file)
index 0000000..3ed6ca8
--- /dev/null
@@ -0,0 +1,7 @@
+PACKAGE_NAME="dpdk-rte-kni"
+PACKAGE_VERSION="#MODULE_VERSION#"
+BUILT_MODULE_NAME[0]="rte_kni"
+MAKE="make -C $kernel_source_dir M=$dkms_tree/$PACKAGE_NAME/$PACKAGE_VERSION/build src=$source_tree/$PACKAGE_NAME-$PACKAGE_VERSION MODULE_CFLAGS='-I/usr/include/@@DEB_HOST_MULTIARCH@@/dpdk -include /usr/include/@@DEB_HOST_MULTIARCH@@/dpdk/rte_config.h -I/usr/include/dpdk -I$source_tree/$PACKAGE_NAME-$PACKAGE_VERSION/ethtool/ixgbe -I$source_tree/$PACKAGE_NAME-$PACKAGE_VERSION/ethtool/igb -fno-PIE' modules"
+CLEAN="make -C $kernel_source_dir M=$dkms_tree/$PACKAGE_NAME/$PACKAGE_VERSION/build clean"
+DEST_MODULE_LOCATION[0]="/updates/dkms"
+AUTOINSTALL="YES"
diff --git a/debian/dpdk-sdk-env.sh.in b/debian/dpdk-sdk-env.sh.in
new file mode 100755 (executable)
index 0000000..8cc3944
--- /dev/null
@@ -0,0 +1,3 @@
+export RTE_TARGET=SDK_TARGET
+export RTE_SDK="/usr/share/dpdk/"
+export RTE_INCLUDE="/usr/include/dpdk"
diff --git a/debian/dpdk.conf b/debian/dpdk.conf
new file mode 100644 (file)
index 0000000..272565c
--- /dev/null
@@ -0,0 +1,68 @@
+#
+# The number of 2M hugepages to reserve on system boot
+#
+# Default is 0
+# To e.g. let it reserve 128M via 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 2G via 2x 1G Hugepages set:
+# NR_1G_PAGES=2
+
+# The number of 16M hugepages to reserve, supported e.g. on ppc64el
+#
+# Default is 0
+# To e.g. let it reserve 512M via 32x 16M Hugepages set:
+# NR_16M_PAGES=32
+
+#
+# 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.
+
+# Also please be aware that multiple huge page sizes and their mountpoints
+# can confuse other programs as well. For example libvirt/qemu might pick one
+# of the paths created for DPDKs larger pages or any such.
+# It is recommended in these cases to consider configuring the respective
+# applications as well to not "guess" when picking a hugepage path.
+# In the libvirt/qemu case that would for example be the setting
+# hugetlbfs_mount in /etc/libvirt/qemu.conf
+
+# 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.
+#
diff --git a/debian/dpdk.init b/debian/dpdk.init
new file mode 100644 (file)
index 0000000..dd36c87
--- /dev/null
@@ -0,0 +1,57 @@
+#!/bin/sh
+
+### BEGIN INIT INFO
+# Provides:          dpdk
+# Required-Start:    $remote_fs $local_fs
+# Required-Stop:     $remote_fs $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)
+    ;;
+try-restart|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
+
diff --git a/debian/dpdk.install b/debian/dpdk.install
new file mode 100644 (file)
index 0000000..74dd0b8
--- /dev/null
@@ -0,0 +1,9 @@
+debian/interfaces      etc/dpdk/
+debian/dpdk-init       lib/dpdk/
+debian/dpdk.conf       etc/dpdk/
+usr/bin
+obj-*/test/test/dpdk-test usr/bin/
+test/test/autotest.py usr/share/dpdk/test/
+test/test/autotest_data.py usr/share/dpdk/test/
+test/test/autotest_runner.py usr/share/dpdk/test/
+test/test/autotest_test_funcs.py usr/share/dpdk/test/
diff --git a/debian/dpdk.lintian-overrides b/debian/dpdk.lintian-overrides
new file mode 100644 (file)
index 0000000..3cc26b1
--- /dev/null
@@ -0,0 +1,3 @@
+# upstream ships these, and changing them now would be backward incompatible
+dpdk: script-with-language-extension usr/bin/dpdk-devbind.py
+dpdk: script-with-language-extension usr/bin/dpdk-pmdinfo.py
diff --git a/debian/dpdk.service b/debian/dpdk.service
new file mode 100644 (file)
index 0000000..09ef8be
--- /dev/null
@@ -0,0 +1,12 @@
+[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
diff --git a/debian/interfaces b/debian/interfaces
new file mode 100644 (file)
index 0000000..3442343
--- /dev/null
@@ -0,0 +1,19 @@
+#
+# <bus>                Currently only "pci" is supported
+# <id>         Device ID on the specified bus
+# <driver>     Driver to bind against (vfio-pci, uio_pci_generic, igb_uio or
+#               rte_kni)
+#
+# 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.
+#
+# For the module igb_uio, please install the dpdk-igb-uio-dkms package.
+# For the module rte_kni, please install the dpdk-rte-kni-dkms package.
+#
+# <bus>        <id>            <driver>
+# pci  0000:04:00.0    vfio-pci
+# pci  0000:04:00.1    uio_pci_generic
+# pci  0000:05:00.0    igb_uio
+# pci  0000:06:00.0    rte_kni
diff --git a/debian/kernel-version b/debian/kernel-version
new file mode 100755 (executable)
index 0000000..16ab01b
--- /dev/null
@@ -0,0 +1,61 @@
+#!/usr/bin/perl
+#
+# Copyright (c)  2009-2016 Andreas Beckmann <anbe@debian.org>
+#                2010-2016 Russ Allbery <rra@debian.org>
+#
+# This program 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 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 script.  If not, see <http://www.gnu.org/licenses/>.
+#
+# This program comes from:
+# https://anonscm.debian.org/viewvc/pkg-nvidia/packages/nvidia-graphics-drivers/trunk/debian/module/debian/kernel-version?view=markup
+# The original copyright and license (GPL2+) can be found at:
+# https://anonscm.debian.org/viewvc/pkg-nvidia/packages/nvidia-graphics-drivers/trunk/debian/copyright?view=markup
+#
+# Extract the kernel version from the kernel version header file.  Takes the
+# kernel source path as its only argument.  If the version header couldn't be
+# found, print nothing and exit quietly.
+
+use warnings;
+
+my $ksrc = shift;
+unless ($ksrc && (-f "$ksrc/include/linux/version.h" || -f "$ksrc/include/generated/uapi/linux/version.h")) {
+    exit 0;
+}
+my $found = 0;
+my $line;
+if (open (VERSION, "$ksrc/include/linux/version.h")) {
+    if (defined(VERSION) && ($line = <VERSION>)) {
+        if ($line =~ /"(.+)"/) {
+            print "$1\n";
+            $found = 1;
+        }
+    }
+}
+exit 0 if $found;
+if (open (VERSION, "$ksrc/include/generated/utsrelease.h")) {
+    if (defined(VERSION) && ($line = <VERSION>)) {
+        if ($line =~ /UTS_RELEASE *"(.+)"/) {
+            print "$1\n";
+            $found = 1;
+        }
+    }
+}
+exit 0 if $found;
+# kernel.release is no longer useful since 3.1.0
+unless (open (VERSION, "$ksrc/include/config/kernel.release")) {
+    exit 0;
+}
+if (defined(VERSION) && ($line = <VERSION>)) {
+    print "$line";
+}
+exit 0;
diff --git a/debian/libdpdk-dev.install b/debian/libdpdk-dev.install
new file mode 100644 (file)
index 0000000..c536006
--- /dev/null
@@ -0,0 +1,5 @@
+usr/include
+usr/lib/*/*.a
+usr/lib/*/*.so
+usr/lib/*/*/*/*.so
+usr/lib/*/pkgconfig
diff --git a/debian/libdpdk-dev.lintian-overrides b/debian/libdpdk-dev.lintian-overrides
new file mode 100644 (file)
index 0000000..4ed31fc
--- /dev/null
@@ -0,0 +1,2 @@
+# upstream includes flags which are actually necessary
+libdpdk-dev: pkg-config-bad-directive
diff --git a/debian/librte-acl18.11.symbols b/debian/librte-acl18.11.symbols
new file mode 100644 (file)
index 0000000..4a4e9ff
--- /dev/null
@@ -0,0 +1,15 @@
+librte_acl.so.18.11 librte-acl18.11 #MINVER#
+ DPDK_2.0@DPDK_2.0 16.04
+ rte_acl_add_rules@DPDK_2.0 16.04
+ rte_acl_build@DPDK_2.0 16.04
+ rte_acl_classify@DPDK_2.0 16.04
+ rte_acl_classify_alg@DPDK_2.0 16.04
+ rte_acl_classify_scalar@DPDK_2.0 16.04
+ rte_acl_create@DPDK_2.0 16.04
+ rte_acl_dump@DPDK_2.0 16.04
+ rte_acl_find_existing@DPDK_2.0 16.04
+ rte_acl_free@DPDK_2.0 16.04
+ rte_acl_list_dump@DPDK_2.0 16.04
+ rte_acl_reset@DPDK_2.0 16.04
+ rte_acl_reset_rules@DPDK_2.0 16.04
+ rte_acl_set_ctx_classify@DPDK_2.0 16.04
diff --git a/debian/librte-bbdev18.11.symbols b/debian/librte-bbdev18.11.symbols
new file mode 100644 (file)
index 0000000..be571b3
--- /dev/null
@@ -0,0 +1,29 @@
+librte_bbdev.so.18.11 librte-bbdev18.11 #MINVER#
+ EXPERIMENTAL@EXPERIMENTAL 18.02
+ rte_bbdev_allocate@EXPERIMENTAL 18.02
+ rte_bbdev_callback_register@EXPERIMENTAL 18.02
+ rte_bbdev_callback_unregister@EXPERIMENTAL 18.02
+ rte_bbdev_close@EXPERIMENTAL 18.02
+ rte_bbdev_count@EXPERIMENTAL 18.02
+ rte_bbdev_devices@EXPERIMENTAL 18.02
+ rte_bbdev_find_next@EXPERIMENTAL 18.02
+ rte_bbdev_get_named_dev@EXPERIMENTAL 18.02
+ rte_bbdev_info_get@EXPERIMENTAL 18.02
+ rte_bbdev_intr_enable@EXPERIMENTAL 18.02
+ rte_bbdev_is_valid@EXPERIMENTAL 18.02
+ rte_bbdev_op_pool_create@EXPERIMENTAL 18.02
+ rte_bbdev_op_type_str@EXPERIMENTAL 18.02
+ rte_bbdev_pmd_callback_process@EXPERIMENTAL 18.02
+ rte_bbdev_queue_configure@EXPERIMENTAL 18.02
+ rte_bbdev_queue_info_get@EXPERIMENTAL 18.02
+ rte_bbdev_queue_intr_ctl@EXPERIMENTAL 18.02
+ rte_bbdev_queue_intr_disable@EXPERIMENTAL 18.02
+ rte_bbdev_queue_intr_enable@EXPERIMENTAL 18.02
+ rte_bbdev_queue_start@EXPERIMENTAL 18.02
+ rte_bbdev_queue_stop@EXPERIMENTAL 18.02
+ rte_bbdev_release@EXPERIMENTAL 18.02
+ rte_bbdev_setup_queues@EXPERIMENTAL 18.02
+ rte_bbdev_start@EXPERIMENTAL 18.02
+ rte_bbdev_stats_get@EXPERIMENTAL 18.02
+ rte_bbdev_stats_reset@EXPERIMENTAL 18.02
+ rte_bbdev_stop@EXPERIMENTAL 18.02
diff --git a/debian/librte-bitratestats18.11.symbols b/debian/librte-bitratestats18.11.symbols
new file mode 100644 (file)
index 0000000..31995ce
--- /dev/null
@@ -0,0 +1,5 @@
+librte_bitratestats.so.18.11 librte-bitratestats18.11 #MINVER#
+ DPDK_17.05@DPDK_17.05 17.05
+ rte_stats_bitrate_calc@DPDK_17.05 17.05
+ rte_stats_bitrate_create@DPDK_17.05 17.05
+ rte_stats_bitrate_reg@DPDK_17.05 17.05
diff --git a/debian/librte-bpf18.11.symbols b/debian/librte-bpf18.11.symbols
new file mode 100644 (file)
index 0000000..24dbd86
--- /dev/null
@@ -0,0 +1,13 @@
+librte_bpf.so.18.11 librte-bpf18.11 #MINVER#
+# Only experimental symbols for now
+ EXPERIMENTAL@EXPERIMENTAL 18.05
+ rte_bpf_destroy@EXPERIMENTAL 18.05
+ rte_bpf_elf_load@EXPERIMENTAL 18.05
+ rte_bpf_eth_rx_elf_load@EXPERIMENTAL 18.05
+ rte_bpf_eth_rx_unload@EXPERIMENTAL 18.05
+ rte_bpf_eth_tx_elf_load@EXPERIMENTAL 18.05
+ rte_bpf_eth_tx_unload@EXPERIMENTAL 18.05
+ rte_bpf_exec@EXPERIMENTAL 18.05
+ rte_bpf_exec_burst@EXPERIMENTAL 18.05
+ rte_bpf_get_jit@EXPERIMENTAL 18.05
+ rte_bpf_load@EXPERIMENTAL 18.05
diff --git a/debian/librte-bus-fslmc18.11.symbols b/debian/librte-bus-fslmc18.11.symbols
new file mode 100644 (file)
index 0000000..72371d4
--- /dev/null
@@ -0,0 +1,101 @@
+librte_bus_fslmc.so.18.11 librte-bus-fslmc18.11 #MINVER#
+ DPDK_17.05@DPDK_17.05 17.11
+ DPDK_17.08@DPDK_17.08 17.11
+ DPDK_17.11@DPDK_17.11 17.11
+ DPDK_18.02@DPDK_18.02 18.02
+ DPDK_18.05@DPDK_18.05 18.05
+ DPDK_18.11@DPDK_18.11 18.11
+ dpaa2_affine_qbman_ethrx_swp@DPDK_18.05 18.05
+ dpaa2_affine_qbman_swp@DPDK_17.05 18.02
+ dpaa2_alloc_dpbp_dev@DPDK_17.05 18.02
+ dpaa2_alloc_dq_storage@DPDK_17.05 18.02
+ dpaa2_dpbp_supported@DPDK_17.11 18.02
+ dpaa2_dqrr_size@DPDK_18.11 18.11
+ dpaa2_eqcr_size@DPDK_18.11 18.11
+ dpaa2_free_dpbp_dev@DPDK_17.05 18.02
+ dpaa2_free_dq_storage@DPDK_17.05 18.02
+ dpaa2_get_qbman_swp@DPDK_17.08 18.02
+ dpaa2_io_portal@DPDK_17.08 18.02
+ dpaa2_svr_family@DPDK_18.02 18.02
+ dpaa2_virt_mode@DPDK_18.02 18.02
+ dpbp_disable@DPDK_17.05 18.02
+ dpbp_enable@DPDK_17.05 18.02
+ dpbp_get_attributes@DPDK_17.05 18.02
+ dpbp_get_num_free_bufs@DPDK_17.05 18.02
+ dpbp_open@DPDK_17.05 18.02
+ dpbp_reset@DPDK_17.05 18.02
+ dpci_get_link_state@DPDK_18.11 18.11
+ dpci_get_opr@DPDK_18.11 18.11
+ dpci_get_peer_attributes@DPDK_18.11 18.11
+ dpci_set_opr@DPDK_18.11 18.11
+ dpci_set_rx_queue@DPDK_17.08 18.02
+ dpcon_get_attributes@DPDK_17.08 18.02
+ dpcon_open@DPDK_17.08 18.02
+ dpdmai_close@DPDK_18.05 18.05
+ dpdmai_disable@DPDK_18.05 18.05
+ dpdmai_enable@DPDK_18.05 18.05
+ dpdmai_get_attributes@DPDK_18.05 18.05
+ dpdmai_get_rx_queue@DPDK_18.05 18.05
+ dpdmai_get_tx_queue@DPDK_18.05 18.05
+ dpdmai_open@DPDK_18.05 18.05
+ dpdmai_set_rx_queue@DPDK_18.05 18.05
+ dpio_add_static_dequeue_channel@DPDK_17.08 18.02
+ dpio_close@DPDK_17.05 18.02
+ dpio_disable@DPDK_17.05 18.02
+ dpio_enable@DPDK_17.05 18.02
+ dpio_get_attributes@DPDK_17.05 18.02
+ dpio_open@DPDK_17.05 18.02
+ dpio_remove_static_dequeue_channel@DPDK_17.08 18.02
+ dpio_reset@DPDK_17.05 18.02
+ dpio_set_stashing_destination@DPDK_17.05 18.02
+ mc_get_soc_version@DPDK_17.08 18.02
+ mc_get_version@DPDK_17.08 18.02
+ mc_send_command@DPDK_17.05 18.02
+ per_lcore__dpaa2_io@DPDK_17.05 18.02
+ per_lcore_dpaa2_held_bufs@DPDK_18.02 18.02
+ qbman_check_command_complete@DPDK_17.05 18.02
+ qbman_check_new_result@DPDK_17.08 18.02
+ qbman_eq_desc_clear@DPDK_17.05 18.02
+ qbman_eq_desc_set_dca@DPDK_17.08 18.02
+ qbman_eq_desc_set_fq@DPDK_17.05 18.02
+ qbman_eq_desc_set_no_orp@DPDK_17.05 18.02
+ qbman_eq_desc_set_qd@DPDK_17.05 18.02
+ qbman_eq_desc_set_response@DPDK_17.05 18.02
+ qbman_fq_query_state@DPDK_18.02 18.02
+ qbman_fq_state_frame_count@DPDK_18.02 18.02
+ qbman_get_dqrr_from_idx@DPDK_17.08 18.02
+ qbman_get_dqrr_idx@DPDK_17.08 18.02
+ qbman_pull_desc_clear@DPDK_17.05 18.02
+ qbman_pull_desc_set_fq@DPDK_17.05 18.02
+ qbman_pull_desc_set_numframes@DPDK_17.05 18.02
+ qbman_pull_desc_set_storage@DPDK_17.05 18.02
+ qbman_release_desc_clear@DPDK_17.05 18.02
+ qbman_release_desc_set_bpid@DPDK_17.05 18.02
+ qbman_result_DQ_fd@DPDK_17.05 18.02
+ qbman_result_DQ_flags@DPDK_17.05 18.02
+ qbman_result_DQ_fqd_ctx@DPDK_17.08 18.02
+ qbman_result_SCN_state@DPDK_17.08 18.02
+ qbman_result_has_new_result@DPDK_17.05 18.02
+ qbman_swp_acquire@DPDK_17.05 18.02
+ qbman_swp_dqrr_consume@DPDK_17.08 18.02
+ qbman_swp_dqrr_idx_consume@DPDK_18.02 18.02
+ qbman_swp_dqrr_next@DPDK_17.08 18.02
+ qbman_swp_enqueue_multiple@DPDK_17.08 18.02
+ qbman_swp_enqueue_multiple_desc@DPDK_17.08 18.02
+ qbman_swp_interrupt_clear_status@DPDK_17.08 18.02
+ qbman_swp_prefetch_dqrr_next@DPDK_18.02 18.02
+ qbman_swp_pull@DPDK_17.05 18.02
+ qbman_swp_push_set@DPDK_17.08 18.02
+ qbman_swp_release@DPDK_17.05 18.02
+ rte_dpaa2_alloc_dpci_dev@DPDK_17.08 18.02
+ rte_dpaa2_free_dpci_dev@DPDK_18.05 18.05
+ rte_dpaa2_intr_disable@DPDK_17.11 18.02
+ rte_dpaa2_intr_enable@DPDK_17.11 18.02
+ rte_dpaa2_memsegs@DPDK_18.05 18.11
+ rte_fslmc_driver_register@DPDK_17.05 18.02
+ rte_fslmc_driver_unregister@DPDK_17.05 18.02
+ rte_fslmc_get_device_count@DPDK_18.02 18.02
+ rte_fslmc_object_register@DPDK_17.08 18.02
+ rte_fslmc_vfio_dmamap@DPDK_17.05 18.02
+ rte_global_active_dqs_list@DPDK_17.08 18.02
+ rte_mcp_ptr_list@DPDK_17.05 18.02
diff --git a/debian/librte-bus-ifpga18.11.symbols b/debian/librte-bus-ifpga18.11.symbols
new file mode 100644 (file)
index 0000000..698198c
--- /dev/null
@@ -0,0 +1,6 @@
+librte_bus_ifpga.so.18.11 librte-bus-ifpga18.11 #MINVER#
+ DPDK_18.05@DPDK_18.05 18.05
+ rte_ifpga_driver_register@DPDK_18.05 18.05
+ rte_ifpga_driver_unregister@DPDK_18.05 18.05
+ rte_ifpga_get_integer32_arg@DPDK_18.05 18.05
+ rte_ifpga_get_string_arg@DPDK_18.05 18.05
diff --git a/debian/librte-bus-pci18.11.symbols b/debian/librte-bus-pci18.11.symbols
new file mode 100644 (file)
index 0000000..3f1c67d
--- /dev/null
@@ -0,0 +1,14 @@
+librte_bus_pci.so.18.11 librte-bus-pci18.11 #MINVER#
+ DPDK_17.11@DPDK_17.11 17.11
+ rte_pci_dump@DPDK_17.11 17.11
+ rte_pci_get_sysfs_path@DPDK_17.11 17.11
+ rte_pci_ioport_map@DPDK_17.11 17.11
+ rte_pci_ioport_read@DPDK_17.11 17.11
+ rte_pci_ioport_unmap@DPDK_17.11 17.11
+ rte_pci_ioport_write@DPDK_17.11 17.11
+ rte_pci_map_device@DPDK_17.11 17.11
+ rte_pci_read_config@DPDK_17.11 17.11
+ rte_pci_register@DPDK_17.11 17.11
+ rte_pci_unmap_device@DPDK_17.11 17.11
+ rte_pci_unregister@DPDK_17.11 17.11
+ rte_pci_write_config@DPDK_17.11 17.11
diff --git a/debian/librte-bus-vdev18.11.symbols b/debian/librte-bus-vdev18.11.symbols
new file mode 100644 (file)
index 0000000..edb0717
--- /dev/null
@@ -0,0 +1,9 @@
+librte_bus_vdev.so.18.11 librte-bus-vdev18.11 #MINVER#
+ DPDK_17.11@DPDK_17.11 17.11
+ DPDK_18.02@DPDK_18.02 18.02
+ rte_vdev_add_custom_scan@DPDK_18.02 18.02
+ rte_vdev_init@DPDK_17.11 17.11
+ rte_vdev_register@DPDK_17.11 17.11
+ rte_vdev_remove_custom_scan@DPDK_18.02 18.02
+ rte_vdev_uninit@DPDK_17.11 17.11
+ rte_vdev_unregister@DPDK_17.11 17.11
diff --git a/debian/librte-bus-vmbus18.11.symbols b/debian/librte-bus-vmbus18.11.symbols
new file mode 100644 (file)
index 0000000..3728a72
--- /dev/null
@@ -0,0 +1,25 @@
+librte_bus_vmbus.so.18.11 librte-bus-vmbus18.11 #MINVER#
+ DPDK_18.08@DPDK_18.08 18.08
+ DPDK_18.11@DPDK_18.11 18.11
+ rte_vmbus_chan_close@DPDK_18.08 18.08
+ rte_vmbus_chan_open@DPDK_18.08 18.08
+ rte_vmbus_chan_recv@DPDK_18.08 18.08
+ rte_vmbus_chan_recv_raw@DPDK_18.08 18.08
+ rte_vmbus_chan_rx_empty@DPDK_18.08 18.08
+ rte_vmbus_chan_send@DPDK_18.08 18.08
+ rte_vmbus_chan_send_sglist@DPDK_18.08 18.08
+ rte_vmbus_chan_signal_read@DPDK_18.08 18.08
+ rte_vmbus_chan_signal_tx@DPDK_18.08 18.08
+ rte_vmbus_irq_mask@DPDK_18.08 18.08
+ rte_vmbus_irq_read@DPDK_18.08 18.08
+ rte_vmbus_irq_unmask@DPDK_18.08 18.08
+ rte_vmbus_map_device@DPDK_18.08 18.08
+ rte_vmbus_max_channels@DPDK_18.08 18.08
+ rte_vmbus_probe@DPDK_18.08 18.08
+ rte_vmbus_register@DPDK_18.08 18.08
+ rte_vmbus_scan@DPDK_18.08 18.08
+ rte_vmbus_set_latency@DPDK_18.11 18.11
+ rte_vmbus_sub_channel_index@DPDK_18.08 18.08
+ rte_vmbus_subchan_open@DPDK_18.08 18.08
+ rte_vmbus_unmap_device@DPDK_18.08 18.08
+ rte_vmbus_unregister@DPDK_18.08 18.08
diff --git a/debian/librte-cfgfile18.11.symbols b/debian/librte-cfgfile18.11.symbols
new file mode 100644 (file)
index 0000000..808514d
--- /dev/null
@@ -0,0 +1,21 @@
+librte_cfgfile.so.18.11 librte-cfgfile18.11 #MINVER#
+ DPDK_16.04@DPDK_16.04 16.04
+ DPDK_17.05@DPDK_17.05 17.05
+ DPDK_17.11@DPDK_17.11 17.11
+ DPDK_2.0@DPDK_2.0 16.04
+ rte_cfgfile_add_entry@DPDK_17.11 17.11
+ rte_cfgfile_add_section@DPDK_17.11 17.11
+ rte_cfgfile_close@DPDK_2.0 16.04
+ rte_cfgfile_create@DPDK_17.11 17.11
+ rte_cfgfile_get_entry@DPDK_2.0 16.04
+ rte_cfgfile_has_entry@DPDK_2.0 16.04
+ rte_cfgfile_has_section@DPDK_2.0 16.04
+ rte_cfgfile_load@DPDK_2.0 16.04
+ rte_cfgfile_load_with_params@DPDK_17.05 17.05
+ rte_cfgfile_num_sections@DPDK_2.0 16.04
+ rte_cfgfile_save@DPDK_17.11 17.11
+ rte_cfgfile_section_entries@DPDK_2.0 16.04
+ rte_cfgfile_section_entries_by_index@DPDK_16.04 16.04
+ rte_cfgfile_section_num_entries@DPDK_2.0 16.04
+ rte_cfgfile_sections@DPDK_2.0 16.04
+ rte_cfgfile_set_entry@DPDK_17.11 17.11
diff --git a/debian/librte-cmdline18.11.symbols b/debian/librte-cmdline18.11.symbols
new file mode 100644 (file)
index 0000000..ec11fef
--- /dev/null
@@ -0,0 +1,68 @@
+librte_cmdline.so.18.11 librte-cmdline18.11 #MINVER#
+ DPDK_2.0@DPDK_2.0 16.04
+ DPDK_2.1@DPDK_2.1 16.04
+ cirbuf_add_buf_head@DPDK_2.0 16.04
+ cirbuf_add_buf_tail@DPDK_2.0 16.04
+ cirbuf_add_head@DPDK_2.0 16.04
+ cirbuf_add_head_safe@DPDK_2.0 16.04
+ cirbuf_add_tail@DPDK_2.0 16.04
+ cirbuf_add_tail_safe@DPDK_2.0 16.04
+ cirbuf_align_left@DPDK_2.0 16.04
+ cirbuf_align_right@DPDK_2.0 16.04
+ cirbuf_del_buf_head@DPDK_2.0 16.04
+ cirbuf_del_buf_tail@DPDK_2.0 16.04
+ cirbuf_del_head@DPDK_2.0 16.04
+ cirbuf_del_head_safe@DPDK_2.0 16.04
+ cirbuf_del_tail@DPDK_2.0 16.04
+ cirbuf_del_tail_safe@DPDK_2.0 16.04
+ cirbuf_get_buf_head@DPDK_2.0 16.04
+ cirbuf_get_buf_tail@DPDK_2.0 16.04
+ cirbuf_get_head@DPDK_2.0 16.04
+ cirbuf_get_tail@DPDK_2.0 16.04
+ cirbuf_init@DPDK_2.0 16.04
+ cmdline_complete@DPDK_2.0 16.04
+ cmdline_complete_get_elt_string@DPDK_2.0 16.04
+ cmdline_complete_get_nb_string@DPDK_2.0 16.04
+ cmdline_file_new@DPDK_2.0 16.04
+ cmdline_free@DPDK_2.0 16.04
+ cmdline_get_help_etheraddr@DPDK_2.0 16.04
+ cmdline_get_help_ipaddr@DPDK_2.0 16.04
+ cmdline_get_help_num@DPDK_2.0 16.04
+ cmdline_get_help_portlist@DPDK_2.0 16.04
+ cmdline_get_help_string@DPDK_2.0 16.04
+ cmdline_in@DPDK_2.0 16.04
+ cmdline_interact@DPDK_2.0 16.04
+ cmdline_isendoftoken@DPDK_2.0 16.04
+ cmdline_new@DPDK_2.0 16.04
+ cmdline_parse@DPDK_2.0 16.04
+ cmdline_parse_etheraddr@DPDK_2.0 16.04
+ cmdline_parse_ipaddr@DPDK_2.0 16.04
+ cmdline_parse_num@DPDK_2.0 16.04
+ cmdline_parse_portlist@DPDK_2.0 16.04
+ cmdline_parse_string@DPDK_2.0 16.04
+ cmdline_poll@DPDK_2.1 16.04
+ cmdline_printf@DPDK_2.0 16.04
+ cmdline_quit@DPDK_2.0 16.04
+ cmdline_set_prompt@DPDK_2.0 16.04
+ cmdline_stdin_exit@DPDK_2.0 16.04
+ cmdline_stdin_new@DPDK_2.0 16.04
+ cmdline_token_etheraddr_ops@DPDK_2.0 16.04
+ cmdline_token_ipaddr_ops@DPDK_2.0 16.04
+ cmdline_token_num_ops@DPDK_2.0 16.04
+ cmdline_token_portlist_ops@DPDK_2.0 16.04
+ cmdline_token_string_ops@DPDK_2.0 16.04
+ cmdline_write_char@DPDK_2.0 16.04
+ rdline_add_history@DPDK_2.0 16.04
+ rdline_char_in@DPDK_2.0 16.04
+ rdline_clear_history@DPDK_2.0 16.04
+ rdline_get_buffer@DPDK_2.0 16.04
+ rdline_get_history_item@DPDK_2.0 16.04
+ rdline_init@DPDK_2.0 16.04
+ rdline_newline@DPDK_2.0 16.04
+ rdline_quit@DPDK_2.0 16.04
+ rdline_redisplay@DPDK_2.0 16.04
+ rdline_reset@DPDK_2.0 16.04
+ rdline_restart@DPDK_2.0 16.04
+ rdline_stop@DPDK_2.0 16.04
+ vt100_init@DPDK_2.0 16.04
+ vt100_parser@DPDK_2.0 16.04
diff --git a/debian/librte-common-cpt18.11.symbols b/debian/librte-common-cpt18.11.symbols
new file mode 100644 (file)
index 0000000..3e02ade
--- /dev/null
@@ -0,0 +1,4 @@
+librte_common_cpt.so.18.11 librte-common-cpt18.11 #MINVER#
+ DPDK_18.11@DPDK_18.11 18.11
+ cpt_pmd_ops_helper_get_mlen_direct_mode@DPDK_18.11 18.11
+ cpt_pmd_ops_helper_get_mlen_sg_mode@DPDK_18.11 18.11
diff --git a/debian/librte-common-dpaax18.11.symbols b/debian/librte-common-dpaax18.11.symbols
new file mode 100644 (file)
index 0000000..f5ecc1f
--- /dev/null
@@ -0,0 +1,7 @@
+librte_common_dpaax.so.18.11 librte-common-dpaax18.11 #MINVER#
+ DPDK_18.11@DPDK_18.11 18.11
+ dpaax_iova_table_depopulate@DPDK_18.11 18.11
+ dpaax_iova_table_dump@DPDK_18.11 18.11
+ dpaax_iova_table_p@DPDK_18.11 18.11
+ dpaax_iova_table_populate@DPDK_18.11 18.11
+ dpaax_iova_table_update@DPDK_18.11 18.11
diff --git a/debian/librte-common-octeontx18.11.symbols b/debian/librte-common-octeontx18.11.symbols
new file mode 100644 (file)
index 0000000..95a73cf
--- /dev/null
@@ -0,0 +1,6 @@
+librte_common_octeontx.so.18.11 librte-common-octeontx18.11 #MINVER#
+ DPDK_18.05@DPDK_18.05 18.05
+ octeontx_logtype_mbox@Base 18.05
+ octeontx_mbox_send@DPDK_18.05 18.05
+ octeontx_mbox_set_ram_mbox_base@DPDK_18.05 18.05
+ octeontx_mbox_set_reg@DPDK_18.05 18.05
diff --git a/debian/librte-compressdev18.11.symbols b/debian/librte-compressdev18.11.symbols
new file mode 100644 (file)
index 0000000..d96d910
--- /dev/null
@@ -0,0 +1,35 @@
+librte_compressdev.so.18.11 librte-compressdev18.11 #MINVER#
+ EXPERIMENTAL@EXPERIMENTAL 18.05
+ rte_comp_get_feature_name@EXPERIMENTAL 18.05
+ rte_comp_op_alloc@EXPERIMENTAL 18.05
+ rte_comp_op_bulk_alloc@EXPERIMENTAL 18.05
+ rte_comp_op_free@EXPERIMENTAL 18.05
+ rte_comp_op_pool_create@EXPERIMENTAL 18.05
+ rte_compressdev_capability_get@EXPERIMENTAL 18.05
+ rte_compressdev_close@EXPERIMENTAL 18.05
+ rte_compressdev_configure@EXPERIMENTAL 18.05
+ rte_compressdev_count@EXPERIMENTAL 18.05
+ rte_compressdev_dequeue_burst@EXPERIMENTAL 18.05
+ rte_compressdev_devices_get@EXPERIMENTAL 18.05
+ rte_compressdev_enqueue_burst@EXPERIMENTAL 18.05
+ rte_compressdev_get_dev_id@EXPERIMENTAL 18.05
+ rte_compressdev_get_feature_name@EXPERIMENTAL 18.05
+ rte_compressdev_info_get@EXPERIMENTAL 18.05
+ rte_compressdev_name_get@EXPERIMENTAL 18.05
+ rte_compressdev_pmd_allocate@EXPERIMENTAL 18.05
+ rte_compressdev_pmd_create@EXPERIMENTAL 18.05
+ rte_compressdev_pmd_destroy@EXPERIMENTAL 18.05
+ rte_compressdev_pmd_get_named_dev@EXPERIMENTAL 18.05
+ rte_compressdev_pmd_parse_input_args@EXPERIMENTAL 18.05
+ rte_compressdev_pmd_release_device@EXPERIMENTAL 18.05
+ rte_compressdev_private_xform_create@EXPERIMENTAL 18.05
+ rte_compressdev_private_xform_free@EXPERIMENTAL 18.05
+ rte_compressdev_queue_pair_count@EXPERIMENTAL 18.05
+ rte_compressdev_queue_pair_setup@EXPERIMENTAL 18.05
+ rte_compressdev_socket_id@EXPERIMENTAL 18.05
+ rte_compressdev_start@EXPERIMENTAL 18.05
+ rte_compressdev_stats_get@EXPERIMENTAL 18.05
+ rte_compressdev_stats_reset@EXPERIMENTAL 18.05
+ rte_compressdev_stop@EXPERIMENTAL 18.05
+ rte_compressdev_stream_create@EXPERIMENTAL 18.05
+ rte_compressdev_stream_free@EXPERIMENTAL 18.05
diff --git a/debian/librte-cryptodev18.11.symbols b/debian/librte-cryptodev18.11.symbols
new file mode 100644 (file)
index 0000000..564cde0
--- /dev/null
@@ -0,0 +1,83 @@
+librte_cryptodev.so.18.11 librte-cryptodev18.11 #MINVER#
+ DPDK_16.04@DPDK_16.04 16.04
+ DPDK_17.02@DPDK_17.02 17.05
+ DPDK_17.05@DPDK_17.05 17.05
+ DPDK_17.08@DPDK_17.08 17.08
+ DPDK_17.11@DPDK_17.11 17.11
+ DPDK_18.05@DPDK_18.05 18.05
+ EXPERIMENTAL@EXPERIMENTAL 18.05
+ rte_crypto_aead_algorithm_strings@DPDK_17.08 17.08
+ rte_crypto_aead_operation_strings@DPDK_17.08 17.08
+ rte_crypto_asym_op_strings@EXPERIMENTAL 18.08
+ rte_crypto_asym_xform_strings@EXPERIMENTAL 18.08
+ rte_crypto_auth_algorithm_strings@DPDK_17.02 17.05
+ rte_crypto_auth_operation_strings@DPDK_17.02 17.05
+ rte_crypto_cipher_algorithm_strings@DPDK_17.02 17.05
+ rte_crypto_cipher_operation_strings@DPDK_17.02 17.05
+ rte_crypto_op_pool_create@DPDK_16.04 16.04
+ rte_cryptodev_allocate_driver@DPDK_17.08 17.08
+ rte_cryptodev_asym_capability_get@EXPERIMENTAL 18.08
+ rte_cryptodev_asym_get_header_session_size@EXPERIMENTAL 18.08
+ rte_cryptodev_asym_get_private_session_size@EXPERIMENTAL 18.08
+ rte_cryptodev_asym_get_xform_enum@EXPERIMENTAL 18.08
+ rte_cryptodev_asym_session_clear@EXPERIMENTAL 18.08
+ rte_cryptodev_asym_session_create@EXPERIMENTAL 18.08
+ rte_cryptodev_asym_session_free@EXPERIMENTAL 18.08
+ rte_cryptodev_asym_session_init@EXPERIMENTAL 18.08
+ rte_cryptodev_asym_xform_capability_check_modlen@EXPERIMENTAL 18.08
+ rte_cryptodev_asym_xform_capability_check_optype@EXPERIMENTAL 18.08
+ rte_cryptodev_callback_register@DPDK_16.04 16.04
+ rte_cryptodev_callback_unregister@DPDK_16.04 16.04
+ rte_cryptodev_close@DPDK_16.04 16.04
+ rte_cryptodev_configure@DPDK_16.04 16.04
+ rte_cryptodev_count@DPDK_16.04 16.04
+ rte_cryptodev_device_count_by_driver@DPDK_17.08 17.08
+ rte_cryptodev_devices_get@DPDK_17.02 17.05
+ rte_cryptodev_driver_id_get@DPDK_17.08 17.08
+ rte_cryptodev_driver_name_get@DPDK_17.08 17.08
+ rte_cryptodev_get_aead_algo_enum@DPDK_17.08 17.08
+ rte_cryptodev_get_auth_algo_enum@DPDK_17.05 17.05
+ rte_cryptodev_get_cipher_algo_enum@DPDK_17.05 17.05
+ rte_cryptodev_get_dev_id@DPDK_16.04 16.04
+ rte_cryptodev_get_feature_name@DPDK_16.04 16.04
+#MISSING: 18.08# rte_cryptodev_get_header_session_size@DPDK_17.08 17.08
+#MISSING: 18.08# rte_cryptodev_get_private_session_size@DPDK_17.08 17.08
+ rte_cryptodev_get_sec_ctx@DPDK_17.11 17.11
+ rte_cryptodev_info_get@DPDK_16.04 16.04
+ rte_cryptodev_name_get@DPDK_17.11 17.11
+ rte_cryptodev_pmd_allocate@DPDK_16.04 16.04
+ rte_cryptodev_pmd_callback_process@DPDK_16.04 16.04
+ rte_cryptodev_pmd_create@DPDK_17.11 17.11
+ rte_cryptodev_pmd_create_dev_name@DPDK_17.02 17.05
+ rte_cryptodev_pmd_destroy@DPDK_17.11 17.11
+ rte_cryptodev_pmd_get_dev@DPDK_17.02 17.05
+ rte_cryptodev_pmd_get_named_dev@DPDK_17.02 17.05
+ rte_cryptodev_pmd_is_valid_dev@DPDK_17.02 17.05
+ rte_cryptodev_pmd_parse_input_args@DPDK_17.11 17.11
+ rte_cryptodev_pmd_release_device@DPDK_16.04 16.04
+#MISSING: 18.08# rte_cryptodev_queue_pair_attach_sym_session@DPDK_17.05 17.05
+ rte_cryptodev_queue_pair_count@DPDK_16.04 16.04
+#MISSING: 18.08# rte_cryptodev_queue_pair_detach_sym_session@DPDK_17.05 17.05
+ rte_cryptodev_queue_pair_setup@DPDK_16.04 16.04
+#MISSING: 18.08# rte_cryptodev_queue_pair_start@DPDK_16.04 16.04
+#MISSING: 18.08# rte_cryptodev_queue_pair_stop@DPDK_16.04 16.04
+ rte_cryptodev_socket_id@DPDK_16.04 16.04
+ rte_cryptodev_start@DPDK_16.04 16.04
+ rte_cryptodev_stats_get@DPDK_16.04 16.04
+ rte_cryptodev_stats_reset@DPDK_16.04 16.04
+ rte_cryptodev_stop@DPDK_16.04 16.04
+ rte_cryptodev_sym_capability_check_aead@DPDK_17.08 17.08
+ rte_cryptodev_sym_capability_check_auth@DPDK_17.02 17.05
+ rte_cryptodev_sym_capability_check_cipher@DPDK_17.02 17.05
+ rte_cryptodev_sym_capability_get@DPDK_17.02 17.05
+ rte_cryptodev_sym_get_header_session_size@DPDK_18.05 18.05
+ rte_cryptodev_sym_get_private_session_size@DPDK_18.05 18.05
+ rte_cryptodev_sym_session_clear@DPDK_17.08 17.08
+ rte_cryptodev_sym_session_create@DPDK_16.04 16.04
+ rte_cryptodev_sym_session_free@DPDK_16.04 16.04
+#MISSING: 18.08# rte_cryptodev_sym_session_get_private_data@EXPERIMENTAL 18.05
+ rte_cryptodev_sym_session_get_user_data@EXPERIMENTAL 18.08
+ rte_cryptodev_sym_session_init@DPDK_17.08 17.08
+#MISSING: 18.08# rte_cryptodev_sym_session_set_private_data@EXPERIMENTAL 18.05
+ rte_cryptodev_sym_session_set_user_data@EXPERIMENTAL 18.08
+ rte_cryptodevs@DPDK_16.04 16.04
diff --git a/debian/librte-distributor18.11.symbols b/debian/librte-distributor18.11.symbols
new file mode 100644 (file)
index 0000000..e3629a3
--- /dev/null
@@ -0,0 +1,21 @@
+librte_distributor.so.18.11 librte-distributor18.11 #MINVER#
+ DPDK_17.05@DPDK_17.05 17.05
+ DPDK_2.0@DPDK_2.0 16.04
+ rte_distributor_clear_returns@DPDK_17.05 17.05
+ rte_distributor_clear_returns@DPDK_2.0 16.04
+ rte_distributor_create@DPDK_17.05 17.05
+ rte_distributor_create@DPDK_2.0 16.04
+ rte_distributor_flush@DPDK_17.05 17.05
+ rte_distributor_flush@DPDK_2.0 16.04
+ rte_distributor_get_pkt@DPDK_17.05 17.05
+ rte_distributor_get_pkt@DPDK_2.0 16.04
+ rte_distributor_poll_pkt@DPDK_17.05 17.05
+ rte_distributor_poll_pkt@DPDK_2.0 16.04
+ rte_distributor_process@DPDK_17.05 17.05
+ rte_distributor_process@DPDK_2.0 16.04
+ rte_distributor_request_pkt@DPDK_17.05 17.05
+ rte_distributor_request_pkt@DPDK_2.0 16.04
+ rte_distributor_return_pkt@DPDK_17.05 17.05
+ rte_distributor_return_pkt@DPDK_2.0 16.04
+ rte_distributor_returned_pkts@DPDK_17.05 17.05
+ rte_distributor_returned_pkts@DPDK_2.0 16.04
diff --git a/debian/librte-eal18.11.symbols b/debian/librte-eal18.11.symbols
new file mode 100644 (file)
index 0000000..c8111b4
--- /dev/null
@@ -0,0 +1,305 @@
+librte_eal.so.18.11 librte-eal18.11 #MINVER#
+ DPDK_16.04@DPDK_16.04 16.04
+ DPDK_16.07@DPDK_16.07 16.07~rc1
+ DPDK_16.11@DPDK_16.11 16.11
+ DPDK_17.02@DPDK_17.02 17.05
+ DPDK_17.05@DPDK_17.05 17.05
+ DPDK_17.08@DPDK_17.08 17.08
+ DPDK_17.11@DPDK_17.11 17.11
+ DPDK_18.02@DPDK_18.02 18.02
+ DPDK_18.05@DPDK_18.05 18.05
+ DPDK_18.08@DPDK_18.08 18.08
+ DPDK_18.11@DPDK_18.11 18.11
+ DPDK_2.0@DPDK_2.0 16.04
+ DPDK_2.1@DPDK_2.1 16.04
+ DPDK_2.2@DPDK_2.2 16.04
+ EXPERIMENTAL@EXPERIMENTAL 17.08
+ __rte_panic@DPDK_2.0 16.04
+ eal_parse_sysfs_value@DPDK_2.0 16.04
+ eal_timer_source@DPDK_2.0 16.04
+ lcore_config@DPDK_2.0 16.04
+ per_lcore__lcore_id@DPDK_2.0 16.04
+ per_lcore__rte_errno@DPDK_2.0 16.04
+ rte_bus_dump@DPDK_17.02 17.05
+ rte_bus_find@DPDK_17.08 17.08
+ rte_bus_find_by_device@DPDK_17.08 17.08
+ rte_bus_find_by_name@DPDK_17.08 17.08
+ rte_bus_get_iommu_class@DPDK_17.11 17.11
+ rte_bus_probe@DPDK_17.02 17.05
+ rte_bus_register@DPDK_17.02 17.05
+ rte_bus_scan@DPDK_17.02 17.05
+ rte_bus_unregister@DPDK_17.02 17.05
+ rte_calloc@DPDK_2.0 16.04
+ rte_calloc_socket@DPDK_2.0 16.04
+ rte_class_find@EXPERIMENTAL 18.08
+ rte_class_find_by_name@EXPERIMENTAL 18.08
+ rte_class_register@EXPERIMENTAL 18.08
+ rte_class_unregister@EXPERIMENTAL 18.08
+ rte_cpu_check_supported@DPDK_2.0 16.04
+ rte_cpu_get_flag_enabled@DPDK_2.0 16.04
+ rte_cpu_get_flag_name@DPDK_16.04 16.04
+ rte_cpu_is_supported@DPDK_17.05 17.05
+ rte_ctrl_thread_create@EXPERIMENTAL 18.05
+ rte_cycles_vmware_tsc_map@DPDK_2.0 16.04
+ rte_delay_us@DPDK_2.0 16.04
+ rte_delay_us_block@DPDK_16.11 16.11
+ rte_delay_us_callback_register@DPDK_16.11 16.11
+ rte_delay_us_sleep@EXPERIMENTAL 18.11
+ rte_dev_event_callback_process@EXPERIMENTAL 18.11
+ rte_dev_event_callback_register@EXPERIMENTAL 18.05
+ rte_dev_event_callback_unregister@EXPERIMENTAL 18.05
+ rte_dev_event_monitor_start@EXPERIMENTAL 18.05
+ rte_dev_event_monitor_stop@EXPERIMENTAL 18.05
+ rte_dev_hotplug_handle_disable@EXPERIMENTAL 18.11
+ rte_dev_hotplug_handle_enable@EXPERIMENTAL 18.11
+ rte_dev_is_probed@EXPERIMENTAL 18.11
+ rte_dev_iterator_init@EXPERIMENTAL 18.08
+ rte_dev_iterator_next@EXPERIMENTAL 18.08
+ rte_dev_probe@DPDK_18.11 18.11
+ rte_dev_remove@DPDK_18.11 18.11
+ rte_devargs_add@EXPERIMENTAL 18.05
+ rte_devargs_dump@EXPERIMENTAL 18.05
+ rte_devargs_insert@EXPERIMENTAL 18.05
+ rte_devargs_next@EXPERIMENTAL 18.05
+ rte_devargs_parse@EXPERIMENTAL 18.05
+ rte_devargs_parsef@EXPERIMENTAL 18.08
+ rte_devargs_remove@EXPERIMENTAL 18.05
+ rte_devargs_type_count@EXPERIMENTAL 18.05
+ rte_dump_physmem_layout@DPDK_2.0 16.04
+ rte_dump_registers@DPDK_2.0 16.04
+ rte_dump_stack@DPDK_2.0 16.04
+ rte_dump_tailq@DPDK_2.0 16.04
+ rte_eal_alarm_cancel@DPDK_2.0 16.04
+ rte_eal_alarm_set@DPDK_2.0 16.04
+ rte_eal_cleanup@EXPERIMENTAL 18.02
+ rte_eal_create_uio_dev@DPDK_17.11 17.11
+#MISSING: 18.11# rte_eal_dev_attach@DPDK_16.11 16.11
+#MISSING: 18.11# rte_eal_dev_detach@DPDK_16.11 16.11
+ rte_eal_get_configuration@DPDK_2.0 16.04
+ rte_eal_get_lcore_state@DPDK_2.0 16.04
+ rte_eal_get_physmem_size@DPDK_2.0 16.04
+ rte_eal_get_runtime_dir@DPDK_18.11 18.11
+ rte_eal_has_hugepages@DPDK_2.0 16.04
+ rte_eal_has_pci@DPDK_17.11 17.11
+ rte_eal_hotplug_add@DPDK_18.11 18.11
+#MISSING: 18.11# rte_eal_hotplug_add@EXPERIMENTAL 17.08
+ rte_eal_hotplug_remove@DPDK_18.11 18.11
+#MISSING: 18.11# rte_eal_hotplug_remove@EXPERIMENTAL 17.08
+ rte_eal_iova_mode@DPDK_17.11 17.11
+ rte_eal_init@DPDK_2.0 16.04
+ rte_eal_iopl_init@DPDK_2.0 16.04
+ rte_eal_lcore_role@DPDK_2.0 16.04
+#MISSING: 18.08# rte_eal_mbuf_default_mempool_ops@DPDK_17.11 17.11
+ rte_eal_mbuf_user_pool_ops@DPDK_18.08 18.08
+#MISSING: 18.08# rte_eal_mbuf_user_pool_ops@EXPERIMENTAL 18.02
+ rte_eal_mp_remote_launch@DPDK_2.0 16.04
+ rte_eal_mp_wait_lcore@DPDK_2.0 16.04
+#MISSING: 18.11# rte_eal_parse_devargs_str@DPDK_2.0 16.04
+ rte_eal_primary_proc_alive@DPDK_16.04 16.04
+ rte_eal_process_type@DPDK_2.0 16.04
+ rte_eal_remote_launch@DPDK_2.0 16.04
+#MISSING: 18.11# rte_eal_set_socket_permissions@DPDK_16.04 17.11
+ rte_eal_tailq_lookup@DPDK_2.0 16.04
+ rte_eal_tailq_register@DPDK_2.0 16.04
+ rte_eal_using_phys_addrs@DPDK_17.11 17.11
+ rte_eal_vfio_intr_mode@DPDK_17.11 17.11
+ rte_eal_wait_lcore@DPDK_2.0 16.04
+ rte_epoll_ctl@DPDK_2.1 16.04
+ rte_epoll_wait@DPDK_2.1 16.04
+ rte_exit@DPDK_2.0 16.04
+ rte_fbarray_attach@EXPERIMENTAL 18.05
+ rte_fbarray_destroy@EXPERIMENTAL 18.05
+ rte_fbarray_detach@EXPERIMENTAL 18.05
+ rte_fbarray_dump_metadata@EXPERIMENTAL 18.05
+ rte_fbarray_find_contig_free@EXPERIMENTAL 18.05
+ rte_fbarray_find_contig_used@EXPERIMENTAL 18.05
+ rte_fbarray_find_idx@EXPERIMENTAL 18.05
+ rte_fbarray_find_next_free@EXPERIMENTAL 18.05
+ rte_fbarray_find_next_n_free@EXPERIMENTAL 18.05
+ rte_fbarray_find_next_n_used@EXPERIMENTAL 18.05
+ rte_fbarray_find_next_used@EXPERIMENTAL 18.05
+ rte_fbarray_find_prev_free@EXPERIMENTAL 18.08
+ rte_fbarray_find_prev_n_free@EXPERIMENTAL 18.08
+ rte_fbarray_find_prev_n_used@EXPERIMENTAL 18.08
+ rte_fbarray_find_prev_used@EXPERIMENTAL 18.08
+ rte_fbarray_find_rev_contig_free@EXPERIMENTAL 18.08
+ rte_fbarray_find_rev_contig_used@EXPERIMENTAL 18.08
+ rte_fbarray_get@EXPERIMENTAL 18.05
+ rte_fbarray_init@EXPERIMENTAL 18.05
+ rte_fbarray_is_used@EXPERIMENTAL 18.05
+ rte_fbarray_set_free@EXPERIMENTAL 18.05
+ rte_fbarray_set_used@EXPERIMENTAL 18.05
+ rte_free@DPDK_2.0 16.04
+ rte_get_tsc_hz@DPDK_2.0 16.04
+ rte_hexdump@DPDK_2.0 16.04
+ rte_hypervisor_get@DPDK_18.02 18.02
+ rte_hypervisor_get_name@DPDK_18.02 18.02
+ rte_intr_allow_others@DPDK_2.1 16.04
+ rte_intr_callback_register@DPDK_2.0 16.04
+ rte_intr_callback_unregister@DPDK_2.0 16.04
+ rte_intr_cap_multiple@DPDK_2.2 16.04
+ rte_intr_disable@DPDK_2.0 16.04
+ rte_intr_dp_is_en@DPDK_2.1 16.04
+ rte_intr_efd_disable@DPDK_2.1 16.04
+ rte_intr_efd_enable@DPDK_2.1 16.04
+ rte_intr_enable@DPDK_2.0 16.04
+ rte_intr_free_epoll_fd@DPDK_17.05 17.05
+ rte_intr_rx_ctl@DPDK_2.1 16.04
+ rte_intr_tls_epfd@DPDK_2.1 16.04
+ rte_keepalive_create@DPDK_2.2 16.04
+ rte_keepalive_dispatch_pings@DPDK_2.2 16.04
+ rte_keepalive_mark_alive@DPDK_2.2 16.04
+ rte_keepalive_mark_sleep@DPDK_16.07 16.07~rc1
+ rte_keepalive_register_core@DPDK_2.2 16.04
+ rte_keepalive_register_relay_callback@DPDK_16.07 16.07~rc1
+ rte_lcore_has_role@DPDK_17.11 17.11
+ rte_log@DPDK_2.0 16.04
+ rte_log_cur_msg_loglevel@DPDK_2.0 16.04
+ rte_log_cur_msg_logtype@DPDK_2.0 16.04
+ rte_log_dump@DPDK_17.05 17.05
+ rte_log_get_global_level@DPDK_17.05 17.05
+ rte_log_get_level@DPDK_17.08 17.08
+ rte_log_register@DPDK_17.05 17.05
+ rte_log_register_type_and_pick_level@EXPERIMENTAL 18.05
+ rte_log_set_global_level@DPDK_17.05 17.05
+ rte_log_set_level@DPDK_17.05 17.05
+ rte_log_set_level_pattern@DPDK_18.05 18.05
+ rte_log_set_level_regexp@DPDK_17.05 17.05
+ rte_logs@DPDK_2.0 16.04
+ rte_malloc@DPDK_2.0 16.04
+ rte_malloc_dump_heaps@EXPERIMENTAL 18.05
+ rte_malloc_dump_stats@DPDK_2.0 16.04
+ rte_malloc_get_socket_stats@DPDK_2.0 16.04
+ rte_malloc_heap_create@EXPERIMENTAL 18.11
+ rte_malloc_heap_destroy@EXPERIMENTAL 18.11
+ rte_malloc_heap_get_socket@EXPERIMENTAL 18.11
+ rte_malloc_heap_memory_add@EXPERIMENTAL 18.11
+ rte_malloc_heap_memory_attach@EXPERIMENTAL 18.11
+ rte_malloc_heap_memory_detach@EXPERIMENTAL 18.11
+ rte_malloc_heap_memory_remove@EXPERIMENTAL 18.11
+ rte_malloc_heap_socket_is_external@EXPERIMENTAL 18.11
+ rte_malloc_set_limit@DPDK_2.0 16.04
+ rte_malloc_socket@DPDK_2.0 16.04
+ rte_malloc_validate@DPDK_2.0 16.04
+ rte_malloc_virt2iova@DPDK_17.11 17.11
+ rte_mem_alloc_validator_register@EXPERIMENTAL 18.05
+ rte_mem_alloc_validator_unregister@EXPERIMENTAL 18.05
+ rte_mem_check_dma_mask@EXPERIMENTAL 18.11
+ rte_mem_check_dma_mask_thread_unsafe@EXPERIMENTAL 18.11
+ rte_mem_event_callback_register@EXPERIMENTAL 18.05
+ rte_mem_event_callback_unregister@EXPERIMENTAL 18.05
+ rte_mem_iova2virt@EXPERIMENTAL 18.05
+ rte_mem_lock_page@DPDK_2.0 16.04
+ rte_mem_set_dma_mask@EXPERIMENTAL 18.11
+ rte_mem_virt2iova@DPDK_17.11 17.11
+ rte_mem_virt2memseg@EXPERIMENTAL 18.05
+ rte_mem_virt2memseg_list@EXPERIMENTAL 18.05
+ rte_mem_virt2phy@DPDK_2.0 16.04
+ rte_memdump@DPDK_2.0 16.04
+ rte_memory_get_nchannel@DPDK_2.0 16.04
+ rte_memory_get_nrank@DPDK_2.0 16.04
+ rte_memseg_contig_walk@EXPERIMENTAL 18.05
+ rte_memseg_contig_walk_thread_unsafe@EXPERIMENTAL 18.08
+ rte_memseg_get_fd@EXPERIMENTAL 18.11
+ rte_memseg_get_fd_offset@EXPERIMENTAL 18.11
+ rte_memseg_get_fd_offset_thread_unsafe@EXPERIMENTAL 18.11
+ rte_memseg_get_fd_thread_unsafe@EXPERIMENTAL 18.11
+ rte_memseg_list_walk@EXPERIMENTAL 18.05
+ rte_memseg_list_walk_thread_unsafe@EXPERIMENTAL 18.08
+ rte_memseg_walk@EXPERIMENTAL 18.05
+ rte_memseg_walk_thread_unsafe@EXPERIMENTAL 18.08
+ rte_memzone_dump@DPDK_2.0 16.04
+ rte_memzone_free@DPDK_2.1 16.04
+ rte_memzone_lookup@DPDK_2.0 16.04
+ rte_memzone_reserve@DPDK_2.0 16.04
+ rte_memzone_reserve_aligned@DPDK_2.0 16.04
+ rte_memzone_reserve_bounded@DPDK_2.0 16.04
+ rte_memzone_walk@DPDK_2.0 16.04
+ rte_mp_action_register@EXPERIMENTAL 18.02
+ rte_mp_action_unregister@EXPERIMENTAL 18.02
+ rte_mp_reply@EXPERIMENTAL 18.02
+ rte_mp_request_async@EXPERIMENTAL 18.05
+ rte_mp_request_sync@EXPERIMENTAL 18.05
+ rte_mp_sendmsg@EXPERIMENTAL 18.02
+ rte_openlog_stream@DPDK_2.0 16.04
+ rte_option_register@EXPERIMENTAL 18.11
+ rte_realloc@DPDK_2.0 16.04
+ rte_reciprocal_value@DPDK_18.02 18.02
+ rte_reciprocal_value_u64@DPDK_18.02 18.02
+ (arch=!arm64 !armhf !ppc64el)rte_rtm_supported@DPDK_16.07 16.07~rc3
+ rte_service_attr_get@DPDK_18.05 18.05
+ rte_service_attr_reset_all@DPDK_18.05 18.05
+ rte_service_component_register@DPDK_18.05 18.05
+ rte_service_component_runstate_set@DPDK_18.05 18.05
+ rte_service_component_unregister@DPDK_18.05 18.05
+ rte_service_dump@DPDK_18.05 18.05
+ rte_service_finalize@DPDK_18.05 18.05
+ rte_service_get_by_name@DPDK_18.05 18.05
+ rte_service_get_count@DPDK_18.05 18.05
+ rte_service_get_name@DPDK_18.05 18.05
+ rte_service_lcore_add@DPDK_18.05 18.05
+ rte_service_lcore_attr_get@EXPERIMENTAL 18.08
+ rte_service_lcore_attr_reset_all@EXPERIMENTAL 18.08
+ rte_service_lcore_count@DPDK_18.05 18.05
+ rte_service_lcore_count_services@DPDK_18.05 18.05
+ rte_service_lcore_del@DPDK_18.05 18.05
+ rte_service_lcore_list@DPDK_18.05 18.05
+ rte_service_lcore_reset_all@DPDK_18.05 18.05
+ rte_service_lcore_start@DPDK_18.05 18.05
+ rte_service_lcore_stop@DPDK_18.05 18.05
+ rte_service_map_lcore_get@DPDK_18.05 18.05
+ rte_service_map_lcore_set@DPDK_18.05 18.05
+ rte_service_may_be_active@EXPERIMENTAL 18.08
+ rte_service_probe_capability@DPDK_18.05 18.05
+ rte_service_run_iter_on_app_lcore@DPDK_18.05 18.05
+ rte_service_runstate_get@DPDK_18.05 18.05
+ rte_service_runstate_set@DPDK_18.05 18.05
+ rte_service_set_runstate_mapped_check@DPDK_18.05 18.05
+ rte_service_set_stats_enable@DPDK_18.05 18.05
+ rte_service_start_with_defaults@DPDK_18.05 18.05
+ rte_set_application_usage_hook@DPDK_2.0 16.04
+ rte_socket_count@EXPERIMENTAL 18.05
+ rte_socket_id@DPDK_2.0 16.04
+ rte_socket_id_by_idx@EXPERIMENTAL 18.05
+ rte_strerror@DPDK_2.0 16.04
+ rte_strscpy@DPDK_18.11 18.11
+ rte_strsplit@DPDK_2.0 16.04
+ rte_sys_gettid@DPDK_2.0 16.04
+ rte_thread_get_affinity@DPDK_2.0 16.04
+ rte_thread_set_affinity@DPDK_2.0 16.04
+ rte_thread_setname@DPDK_16.07 16.07~rc1
+ rte_uuid_compare@DPDK_18.08 18.08
+ rte_uuid_is_null@DPDK_18.08 18.08
+ rte_uuid_parse@DPDK_18.08 18.08
+ rte_uuid_unparse@DPDK_18.08 18.08
+ rte_vfio_clear_group@DPDK_18.02 18.02
+ rte_vfio_container_create@DPDK_18.08 18.08
+#MISSING: 18.08# rte_vfio_container_create@EXPERIMENTAL 18.05
+ rte_vfio_container_destroy@DPDK_18.08 18.08
+#MISSING: 18.08# rte_vfio_container_destroy@EXPERIMENTAL 18.05
+ rte_vfio_container_dma_map@DPDK_18.08 18.08
+#MISSING: 18.08# rte_vfio_container_dma_map@EXPERIMENTAL 18.05
+ rte_vfio_container_dma_unmap@DPDK_18.08 18.08
+#MISSING: 18.08# rte_vfio_container_dma_unmap@EXPERIMENTAL 18.05
+ rte_vfio_container_group_bind@DPDK_18.08 18.08
+#MISSING: 18.08# rte_vfio_container_group_bind@EXPERIMENTAL 18.05
+ rte_vfio_container_group_unbind@DPDK_18.08 18.08
+#MISSING: 18.08# rte_vfio_container_group_unbind@EXPERIMENTAL 18.05
+ rte_vfio_dma_map@DPDK_18.08 18.08
+#MISSING: 18.08# rte_vfio_dma_map@EXPERIMENTAL 18.05
+ rte_vfio_dma_unmap@DPDK_18.08 18.08
+#MISSING: 18.08# rte_vfio_dma_unmap@EXPERIMENTAL 18.05
+ rte_vfio_enable@DPDK_17.11 17.11
+ rte_vfio_get_container_fd@DPDK_18.08 18.08
+#MISSING: 18.08# rte_vfio_get_container_fd@EXPERIMENTAL 18.05
+ rte_vfio_get_group_fd@DPDK_18.08 18.08
+#MISSING: 18.08# rte_vfio_get_group_fd@EXPERIMENTAL 18.05
+ rte_vfio_get_group_num@DPDK_18.08 18.08
+#MISSING: 18.08# rte_vfio_get_group_num@EXPERIMENTAL 18.05
+ rte_vfio_is_enabled@DPDK_17.11 17.11
+ rte_vfio_noiommu_is_enabled@DPDK_17.11 17.11
+ rte_vfio_release_device@DPDK_17.11 17.11
+ rte_vfio_setup_device@DPDK_17.11 17.11
+ rte_vlog@DPDK_2.0 16.04
+ rte_zmalloc@DPDK_2.0 16.04
+ rte_zmalloc_socket@DPDK_2.0 16.04
diff --git a/debian/librte-efd18.11.symbols b/debian/librte-efd18.11.symbols
new file mode 100644 (file)
index 0000000..4552c9d
--- /dev/null
@@ -0,0 +1,9 @@
+librte_efd.so.18.11 librte-efd18.11 #MINVER#
+ DPDK_17.02@DPDK_17.02 17.05
+ rte_efd_create@DPDK_17.02 17.05
+ rte_efd_delete@DPDK_17.02 17.05
+ rte_efd_find_existing@DPDK_17.02 17.05
+ rte_efd_free@DPDK_17.02 17.05
+ rte_efd_lookup@DPDK_17.02 17.05
+ rte_efd_lookup_bulk@DPDK_17.02 17.05
+ rte_efd_update@DPDK_17.02 17.05
diff --git a/debian/librte-ethdev18.11.symbols b/debian/librte-ethdev18.11.symbols
new file mode 100644 (file)
index 0000000..1542635
--- /dev/null
@@ -0,0 +1,208 @@
+librte_ethdev.so.18.11 librte-ethdev18.11 #MINVER#
+ DPDK_16.04@DPDK_16.04 16.07~rc1
+ DPDK_16.07@DPDK_16.07 16.07~rc1
+ DPDK_17.02@DPDK_17.02 17.05
+ DPDK_17.05@DPDK_17.05 17.05
+ DPDK_17.08@DPDK_17.08 17.08
+ DPDK_17.11@DPDK_17.11 17.11
+ DPDK_18.02@DPDK_18.02 18.02
+ DPDK_18.05@DPDK_18.05 18.05
+ DPDK_18.08@DPDK_18.08 18.08
+ DPDK_18.11@DPDK_18.11 18.11
+ DPDK_2.2@DPDK_2.2 16.07~rc1
+ EXPERIMENTAL@EXPERIMENTAL 17.11
+ _rte_eth_dev_callback_process@DPDK_17.08 17.08
+ _rte_eth_dev_reset@DPDK_17.02 17.05
+ rte_eth_add_first_rx_callback@DPDK_16.07 16.07~rc1
+ rte_eth_add_rx_callback@DPDK_2.2 16.07~rc1
+ rte_eth_add_tx_callback@DPDK_2.2 16.07~rc1
+ rte_eth_allmulticast_disable@DPDK_2.2 16.07~rc1
+ rte_eth_allmulticast_enable@DPDK_2.2 16.07~rc1
+ rte_eth_allmulticast_get@DPDK_2.2 16.07~rc1
+ rte_eth_dev_adjust_nb_rx_tx_desc@DPDK_17.08 17.08
+ rte_eth_dev_allocate@DPDK_2.2 16.07~rc1
+ rte_eth_dev_allocated@DPDK_2.2 16.07~rc1
+#MISSING: 18.11# rte_eth_dev_attach@DPDK_2.2 16.07~rc1
+ rte_eth_dev_attach_secondary@DPDK_17.05 17.05
+ rte_eth_dev_callback_register@DPDK_2.2 16.07~rc1
+ rte_eth_dev_callback_unregister@DPDK_2.2 16.07~rc1
+ rte_eth_dev_close@DPDK_2.2 16.07~rc1
+ rte_eth_dev_configure@DPDK_2.2 16.07~rc1
+ rte_eth_dev_count@DPDK_2.2 16.07~rc1
+ rte_eth_dev_count_avail@DPDK_18.05 18.05
+ rte_eth_dev_count_total@EXPERIMENTAL 18.05
+ rte_eth_dev_create@EXPERIMENTAL 18.05
+ rte_eth_dev_default_mac_addr_set@DPDK_2.2 16.07~rc1
+ rte_eth_dev_destroy@EXPERIMENTAL 18.05
+#MISSING: 18.11# rte_eth_dev_detach@DPDK_2.2 16.07~rc1
+ rte_eth_dev_filter_ctrl@DPDK_18.02 18.02
+ rte_eth_dev_filter_supported@DPDK_2.2 16.07~rc1
+ rte_eth_dev_flow_ctrl_get@DPDK_2.2 16.07~rc1
+ rte_eth_dev_flow_ctrl_set@DPDK_2.2 16.07~rc1
+ rte_eth_dev_fw_version_get@DPDK_17.02 17.05
+ rte_eth_dev_get_dcb_info@DPDK_2.2 16.07~rc1
+ rte_eth_dev_get_eeprom@DPDK_2.2 16.07~rc1
+ rte_eth_dev_get_eeprom_length@DPDK_2.2 16.07~rc1
+ rte_eth_dev_get_module_eeprom@EXPERIMENTAL 18.05
+ rte_eth_dev_get_module_info@EXPERIMENTAL 18.05
+ rte_eth_dev_get_mtu@DPDK_2.2 16.07~rc1
+ rte_eth_dev_get_name_by_port@DPDK_16.07 16.07~rc1
+ rte_eth_dev_get_port_by_name@DPDK_16.07 16.07~rc1
+ rte_eth_dev_get_reg_info@DPDK_2.2 16.07~rc1
+ rte_eth_dev_get_sec_ctx@DPDK_17.11 17.11
+ rte_eth_dev_get_supported_ptypes@DPDK_16.04 16.07~rc1
+ rte_eth_dev_get_vlan_offload@DPDK_2.2 16.07~rc1
+ rte_eth_dev_info_get@DPDK_2.2 16.07~rc1
+ rte_eth_dev_is_removed@EXPERIMENTAL 18.02
+ rte_eth_dev_is_valid_port@DPDK_2.2 16.07~rc1
+ rte_eth_dev_l2_tunnel_eth_type_conf@DPDK_16.04 16.07~rc1
+ rte_eth_dev_l2_tunnel_offload_set@DPDK_16.04 16.07~rc1
+ rte_eth_dev_logtype@DPDK_18.08 18.08
+ rte_eth_dev_mac_addr_add@DPDK_2.2 16.07~rc1
+ rte_eth_dev_mac_addr_remove@DPDK_2.2 16.07~rc1
+ rte_eth_dev_owner_delete@EXPERIMENTAL 18.02
+ rte_eth_dev_owner_get@EXPERIMENTAL 18.02
+ rte_eth_dev_owner_new@EXPERIMENTAL 18.02
+ rte_eth_dev_owner_set@EXPERIMENTAL 18.02
+ rte_eth_dev_owner_unset@EXPERIMENTAL 18.02
+ rte_eth_dev_pool_ops_supported@DPDK_17.11 17.11
+ rte_eth_dev_priority_flow_ctrl_set@DPDK_2.2 16.07~rc1
+ rte_eth_dev_probing_finish@DPDK_18.05 18.05
+ rte_eth_dev_release_port@DPDK_2.2 16.07~rc1
+ rte_eth_dev_reset@DPDK_17.11 17.11
+ rte_eth_dev_rss_hash_conf_get@DPDK_2.2 16.07~rc1
+ rte_eth_dev_rss_hash_update@DPDK_2.2 16.07~rc1
+ rte_eth_dev_rss_reta_query@DPDK_2.2 16.07~rc1
+ rte_eth_dev_rss_reta_update@DPDK_2.2 16.07~rc1
+ rte_eth_dev_rx_intr_ctl@DPDK_2.2 16.07~rc1
+ rte_eth_dev_rx_intr_ctl_q@DPDK_2.2 16.07~rc1
+ rte_eth_dev_rx_intr_ctl_q_get_fd@EXPERIMENTAL 18.11
+ rte_eth_dev_rx_intr_disable@DPDK_2.2 16.07~rc1
+ rte_eth_dev_rx_intr_enable@DPDK_2.2 16.07~rc1
+ rte_eth_dev_rx_offload_name@DPDK_18.11 18.11
+#MISSING: 18.11# rte_eth_dev_rx_offload_name@EXPERIMENTAL 18.02
+ rte_eth_dev_rx_queue_start@DPDK_2.2 16.07~rc1
+ rte_eth_dev_rx_queue_stop@DPDK_2.2 16.07~rc1
+ rte_eth_dev_set_eeprom@DPDK_2.2 16.07~rc1
+ rte_eth_dev_set_link_down@DPDK_2.2 16.07~rc1
+ rte_eth_dev_set_link_up@DPDK_2.2 16.07~rc1
+ rte_eth_dev_set_mc_addr_list@DPDK_2.2 16.07~rc1
+ rte_eth_dev_set_mtu@DPDK_2.2 16.07~rc1
+ rte_eth_dev_set_rx_queue_stats_mapping@DPDK_2.2 16.07~rc1
+ rte_eth_dev_set_tx_queue_stats_mapping@DPDK_2.2 16.07~rc1
+ rte_eth_dev_set_vlan_ether_type@DPDK_16.04 16.07~rc1
+ rte_eth_dev_set_vlan_offload@DPDK_2.2 16.07~rc1
+ rte_eth_dev_set_vlan_pvid@DPDK_2.2 16.07~rc1
+ rte_eth_dev_set_vlan_strip_on_queue@DPDK_2.2 16.07~rc1
+ rte_eth_dev_socket_id@DPDK_2.2 16.07~rc1
+ rte_eth_dev_start@DPDK_2.2 16.07~rc1
+ rte_eth_dev_stop@DPDK_2.2 16.07~rc1
+ rte_eth_dev_tx_offload_name@DPDK_18.11 18.11
+#MISSING: 18.11# rte_eth_dev_tx_offload_name@EXPERIMENTAL 18.02
+ rte_eth_dev_tx_queue_start@DPDK_2.2 16.07~rc1
+ rte_eth_dev_tx_queue_stop@DPDK_2.2 16.07~rc1
+ rte_eth_dev_uc_all_hash_table_set@DPDK_2.2 16.07~rc1
+ rte_eth_dev_uc_hash_table_set@DPDK_2.2 16.07~rc1
+ rte_eth_dev_udp_tunnel_port_add@DPDK_16.04 16.07~rc1
+ rte_eth_dev_udp_tunnel_port_delete@DPDK_16.04 16.07~rc1
+ rte_eth_dev_vlan_filter@DPDK_2.2 16.07~rc1
+ rte_eth_devargs_parse@EXPERIMENTAL 18.05
+ rte_eth_devices@DPDK_2.2 16.07~rc1
+ rte_eth_dma_zone_reserve@DPDK_2.2 16.07~rc1
+ rte_eth_find_next@DPDK_17.05 17.05
+ rte_eth_find_next_owned_by@DPDK_18.05 18.05
+ rte_eth_iterator_cleanup@DPDK_18.11 18.11
+ rte_eth_iterator_init@DPDK_18.11 18.11
+ rte_eth_iterator_next@DPDK_18.11 18.11
+ rte_eth_led_off@DPDK_2.2 16.07~rc1
+ rte_eth_led_on@DPDK_2.2 16.07~rc1
+ rte_eth_link_get@DPDK_2.2 16.07~rc1
+ rte_eth_link_get_nowait@DPDK_2.2 16.07~rc1
+ rte_eth_macaddr_get@DPDK_2.2 16.07~rc1
+ rte_eth_mirror_rule_reset@DPDK_2.2 16.07~rc1
+ rte_eth_mirror_rule_set@DPDK_2.2 16.07~rc1
+ rte_eth_promiscuous_disable@DPDK_2.2 16.07~rc1
+ rte_eth_promiscuous_enable@DPDK_2.2 16.07~rc1
+ rte_eth_promiscuous_get@DPDK_2.2 16.07~rc1
+ rte_eth_remove_rx_callback@DPDK_2.2 16.07~rc1
+ rte_eth_remove_tx_callback@DPDK_2.2 16.07~rc1
+ rte_eth_rx_queue_info_get@DPDK_2.2 16.07~rc1
+ rte_eth_rx_queue_setup@DPDK_2.2 16.07~rc1
+ rte_eth_set_queue_rate_limit@DPDK_2.2 16.07~rc1
+ rte_eth_speed_bitflag@DPDK_16.04 16.07~rc1
+ rte_eth_stats_get@DPDK_2.2 16.07~rc1
+ rte_eth_stats_reset@DPDK_2.2 16.07~rc1
+ rte_eth_switch_domain_alloc@EXPERIMENTAL 18.05
+ rte_eth_switch_domain_free@EXPERIMENTAL 18.05
+ rte_eth_timesync_adjust_time@DPDK_2.2 16.07~rc1
+ rte_eth_timesync_disable@DPDK_2.2 16.07~rc1
+ rte_eth_timesync_enable@DPDK_2.2 16.07~rc1
+ rte_eth_timesync_read_rx_timestamp@DPDK_2.2 16.07~rc1
+ rte_eth_timesync_read_time@DPDK_2.2 16.07~rc1
+ rte_eth_timesync_read_tx_timestamp@DPDK_2.2 16.07~rc1
+ rte_eth_timesync_write_time@DPDK_2.2 16.07~rc1
+ rte_eth_tx_buffer_count_callback@DPDK_16.04 16.07~rc1
+ rte_eth_tx_buffer_drop_callback@DPDK_16.04 16.07~rc1
+ rte_eth_tx_buffer_init@DPDK_16.04 16.07~rc1
+ rte_eth_tx_buffer_set_err_callback@DPDK_16.04 16.07~rc1
+ rte_eth_tx_done_cleanup@DPDK_17.05 17.08
+ rte_eth_tx_queue_info_get@DPDK_2.2 16.07~rc1
+ rte_eth_tx_queue_setup@DPDK_2.2 16.07~rc1
+ rte_eth_xstats_get@DPDK_2.2 16.07~rc1
+ rte_eth_xstats_get_by_id@DPDK_17.05 17.05
+ rte_eth_xstats_get_id_by_name@DPDK_17.05 17.05
+ rte_eth_xstats_get_names@DPDK_16.07 16.07~rc1
+ rte_eth_xstats_get_names_by_id@DPDK_17.05 17.05
+ rte_eth_xstats_reset@DPDK_2.2 16.07~rc1
+ rte_flow_conv@EXPERIMENTAL 18.11
+ rte_flow_copy@DPDK_18.05 18.05
+ rte_flow_create@DPDK_18.05 18.05
+ rte_flow_destroy@DPDK_18.05 18.05
+ rte_flow_error_set@DPDK_18.05 18.05
+ rte_flow_expand_rss@EXPERIMENTAL 18.08
+ rte_flow_flush@DPDK_18.05 18.05
+ rte_flow_isolate@DPDK_18.05 18.05
+ rte_flow_query@DPDK_18.05 18.05
+ rte_flow_validate@DPDK_18.05 18.05
+ rte_mtr_capabilities_get@EXPERIMENTAL 17.11
+ rte_mtr_create@EXPERIMENTAL 17.11
+ rte_mtr_destroy@EXPERIMENTAL 17.11
+ rte_mtr_meter_disable@EXPERIMENTAL 17.11
+ rte_mtr_meter_dscp_table_update@EXPERIMENTAL 17.11
+ rte_mtr_meter_enable@EXPERIMENTAL 17.11
+ rte_mtr_meter_profile_add@EXPERIMENTAL 17.11
+ rte_mtr_meter_profile_delete@EXPERIMENTAL 17.11
+ rte_mtr_meter_profile_update@EXPERIMENTAL 17.11
+ rte_mtr_policer_actions_update@EXPERIMENTAL 17.11
+ rte_mtr_stats_read@EXPERIMENTAL 17.11
+ rte_mtr_stats_update@EXPERIMENTAL 17.11
+ rte_tm_capabilities_get@DPDK_17.08 17.08
+ rte_tm_get_number_of_leaf_nodes@DPDK_17.08 18.05
+ rte_tm_hierarchy_commit@DPDK_17.08 17.08
+ rte_tm_level_capabilities_get@DPDK_17.08 17.08
+ rte_tm_mark_ip_dscp@DPDK_17.08 17.08
+ rte_tm_mark_ip_ecn@DPDK_17.08 17.08
+ rte_tm_mark_vlan_dei@DPDK_17.08 17.08
+ rte_tm_node_add@DPDK_17.08 17.08
+ rte_tm_node_capabilities_get@DPDK_17.08 17.08
+ rte_tm_node_cman_update@DPDK_17.08 17.08
+ rte_tm_node_delete@DPDK_17.08 17.08
+ rte_tm_node_parent_update@DPDK_17.08 17.08
+ rte_tm_node_resume@DPDK_17.08 17.08
+ rte_tm_node_shaper_update@DPDK_17.08 17.08
+ rte_tm_node_shared_shaper_update@DPDK_17.08 17.08
+ rte_tm_node_shared_wred_context_update@DPDK_17.08 17.08
+ rte_tm_node_stats_read@DPDK_17.08 17.08
+ rte_tm_node_stats_update@DPDK_17.08 17.08
+ rte_tm_node_suspend@DPDK_17.08 17.08
+ rte_tm_node_type_get@DPDK_17.08 17.08
+ rte_tm_node_wfq_weight_mode_update@DPDK_17.08 17.08
+ rte_tm_node_wred_context_update@DPDK_17.08 17.08
+ rte_tm_shaper_profile_add@DPDK_17.08 17.08
+ rte_tm_shaper_profile_delete@DPDK_17.08 17.08
+ rte_tm_shared_shaper_add_update@DPDK_17.08 17.08
+ rte_tm_shared_shaper_delete@DPDK_17.08 17.08
+ rte_tm_shared_wred_context_add_update@DPDK_17.08 17.08
+ rte_tm_shared_wred_context_delete@DPDK_17.08 17.08
+ rte_tm_wred_profile_add@DPDK_17.08 17.08
+ rte_tm_wred_profile_delete@DPDK_17.08 17.08
diff --git a/debian/librte-eventdev18.11.symbols b/debian/librte-eventdev18.11.symbols
new file mode 100644 (file)
index 0000000..f39d7fc
--- /dev/null
@@ -0,0 +1,89 @@
+librte_eventdev.so.18.11 librte-eventdev18.11 #MINVER#
+ DPDK_17.05@DPDK_17.05 17.05
+ DPDK_17.08@DPDK_17.08 17.08
+ DPDK_17.11@DPDK_17.11 17.11
+ DPDK_18.02@DPDK_18.02 18.02
+ DPDK_18.05@DPDK_18.05 18.05
+ EXPERIMENTAL@EXPERIMENTAL 18.05
+ rte_event_crypto_adapter_caps_get@EXPERIMENTAL 18.05
+ rte_event_crypto_adapter_create@EXPERIMENTAL 18.05
+ rte_event_crypto_adapter_create_ext@EXPERIMENTAL 18.05
+ rte_event_crypto_adapter_event_port_get@EXPERIMENTAL 18.05
+ rte_event_crypto_adapter_free@EXPERIMENTAL 18.05
+ rte_event_crypto_adapter_queue_pair_add@EXPERIMENTAL 18.05
+ rte_event_crypto_adapter_queue_pair_del@EXPERIMENTAL 18.05
+ rte_event_crypto_adapter_service_id_get@EXPERIMENTAL 18.05
+ rte_event_crypto_adapter_start@EXPERIMENTAL 18.05
+ rte_event_crypto_adapter_stats_get@EXPERIMENTAL 18.05
+ rte_event_crypto_adapter_stats_reset@EXPERIMENTAL 18.05
+ rte_event_crypto_adapter_stop@EXPERIMENTAL 18.05
+ rte_event_dequeue_timeout_ticks@DPDK_17.05 17.05
+ rte_event_dev_attr_get@DPDK_17.11 17.11
+ rte_event_dev_close@DPDK_17.05 17.05
+ rte_event_dev_configure@DPDK_17.05 17.05
+ rte_event_dev_count@DPDK_17.05 17.05
+ rte_event_dev_dump@DPDK_17.05 17.05
+ rte_event_dev_get_dev_id@DPDK_17.05 17.05
+ rte_event_dev_info_get@DPDK_17.05 17.05
+ rte_event_dev_selftest@DPDK_18.02 18.02
+ rte_event_dev_service_id_get@DPDK_17.11 17.11
+ rte_event_dev_socket_id@DPDK_17.05 17.05
+ rte_event_dev_start@DPDK_17.05 17.05
+ rte_event_dev_stop@DPDK_17.05 17.05
+ rte_event_dev_stop_flush_callback_register@DPDK_18.05 18.05
+ rte_event_dev_xstats_by_name_get@DPDK_17.05 17.05
+ rte_event_dev_xstats_get@DPDK_17.05 17.05
+ rte_event_dev_xstats_names_get@DPDK_17.05 17.05
+ rte_event_dev_xstats_reset@DPDK_17.05 17.05
+ rte_event_eth_rx_adapter_caps_get@DPDK_17.11 17.11
+ rte_event_eth_rx_adapter_cb_register@EXPERIMENTAL 18.08
+ rte_event_eth_rx_adapter_create@DPDK_17.11 17.11
+ rte_event_eth_rx_adapter_create_ext@DPDK_17.11 17.11
+ rte_event_eth_rx_adapter_free@DPDK_17.11 17.11
+ rte_event_eth_rx_adapter_queue_add@DPDK_17.11 17.11
+ rte_event_eth_rx_adapter_queue_del@DPDK_17.11 17.11
+ rte_event_eth_rx_adapter_service_id_get@DPDK_17.11 17.11
+ rte_event_eth_rx_adapter_start@DPDK_17.11 17.11
+ rte_event_eth_rx_adapter_stats_get@DPDK_17.11 17.11
+ rte_event_eth_rx_adapter_stats_reset@DPDK_17.11 17.11
+ rte_event_eth_rx_adapter_stop@DPDK_17.11 17.11
+ rte_event_eth_tx_adapter_caps_get@EXPERIMENTAL 18.11
+ rte_event_eth_tx_adapter_create@EXPERIMENTAL 18.11
+ rte_event_eth_tx_adapter_create_ext@EXPERIMENTAL 18.11
+ rte_event_eth_tx_adapter_event_port_get@EXPERIMENTAL 18.11
+ rte_event_eth_tx_adapter_free@EXPERIMENTAL 18.11
+ rte_event_eth_tx_adapter_queue_add@EXPERIMENTAL 18.11
+ rte_event_eth_tx_adapter_queue_del@EXPERIMENTAL 18.11
+ rte_event_eth_tx_adapter_service_id_get@EXPERIMENTAL 18.11
+ rte_event_eth_tx_adapter_start@EXPERIMENTAL 18.11
+ rte_event_eth_tx_adapter_stats_get@EXPERIMENTAL 18.11
+ rte_event_eth_tx_adapter_stats_reset@EXPERIMENTAL 18.11
+ rte_event_eth_tx_adapter_stop@EXPERIMENTAL 18.11
+ rte_event_pmd_allocate@DPDK_17.05 17.05
+ rte_event_pmd_release@DPDK_17.05 17.05
+ rte_event_port_attr_get@DPDK_17.11 17.11
+ rte_event_port_default_conf_get@DPDK_17.05 17.05
+ rte_event_port_link@DPDK_17.05 17.05
+ rte_event_port_links_get@DPDK_17.05 17.05
+ rte_event_port_setup@DPDK_17.05 17.05
+ rte_event_port_unlink@DPDK_17.05 17.05
+ rte_event_port_unlinks_in_progress@EXPERIMENTAL 18.11
+ rte_event_queue_attr_get@DPDK_17.11 17.11
+ rte_event_queue_default_conf_get@DPDK_17.05 17.05
+ rte_event_queue_setup@DPDK_17.05 17.05
+ rte_event_ring_create@DPDK_17.08 17.08
+ rte_event_ring_free@DPDK_17.08 17.08
+ rte_event_ring_init@DPDK_17.08 17.08
+ rte_event_ring_lookup@DPDK_17.08 17.08
+ rte_event_timer_adapter_caps_get@EXPERIMENTAL 18.05
+ rte_event_timer_adapter_create@EXPERIMENTAL 18.05
+ rte_event_timer_adapter_create_ext@EXPERIMENTAL 18.05
+ rte_event_timer_adapter_free@EXPERIMENTAL 18.05
+ rte_event_timer_adapter_get_info@EXPERIMENTAL 18.05
+ rte_event_timer_adapter_lookup@EXPERIMENTAL 18.05
+ rte_event_timer_adapter_service_id_get@EXPERIMENTAL 18.05
+ rte_event_timer_adapter_start@EXPERIMENTAL 18.05
+ rte_event_timer_adapter_stats_get@EXPERIMENTAL 18.05
+ rte_event_timer_adapter_stats_reset@EXPERIMENTAL 18.05
+ rte_event_timer_adapter_stop@EXPERIMENTAL 18.05
+ rte_eventdevs@DPDK_17.05 17.05
diff --git a/debian/librte-flow-classify18.11.symbols b/debian/librte-flow-classify18.11.symbols
new file mode 100644 (file)
index 0000000..dd65e72
--- /dev/null
@@ -0,0 +1,9 @@
+librte_flow_classify.so.18.11 librte-flow-classify18.11 #MINVER#
+ EXPERIMENTAL@EXPERIMENTAL 17.11
+ rte_flow_classifier_create@EXPERIMENTAL 17.11
+ rte_flow_classifier_free@EXPERIMENTAL 17.11
+ rte_flow_classifier_query@EXPERIMENTAL 17.11
+ rte_flow_classify_table_create@EXPERIMENTAL 17.11
+ rte_flow_classify_table_entry_add@EXPERIMENTAL 17.11
+ rte_flow_classify_table_entry_delete@EXPERIMENTAL 17.11
+ rte_flow_classify_validate@EXPERIMENTAL 18.02
diff --git a/debian/librte-gso18.11.symbols b/debian/librte-gso18.11.symbols
new file mode 100644 (file)
index 0000000..fbcbc24
--- /dev/null
@@ -0,0 +1,3 @@
+librte_gso.so.18.11 librte-gso18.11 #MINVER#
+ DPDK_17.11@DPDK_17.11 17.11
+ rte_gso_segment@DPDK_17.11 17.11
diff --git a/debian/librte-hash18.11.symbols b/debian/librte-hash18.11.symbols
new file mode 100644 (file)
index 0000000..051edee
--- /dev/null
@@ -0,0 +1,32 @@
+librte_hash.so.18.11 librte-hash18.11 #MINVER#
+ DPDK_16.07@DPDK_16.07 16.07~rc3
+ DPDK_18.08@DPDK_18.08 18.08
+ DPDK_2.0@DPDK_2.0 16.04
+ DPDK_2.1@DPDK_2.1 16.04
+ DPDK_2.2@DPDK_2.2 16.04
+ EXPERIMENTAL@EXPERIMENTAL 18.11
+ rte_fbk_hash_create@DPDK_2.0 16.04
+ rte_fbk_hash_find_existing@DPDK_2.0 16.04
+ rte_fbk_hash_free@DPDK_2.0 16.04
+ rte_hash_add_key@DPDK_2.0 16.04
+ rte_hash_add_key_data@DPDK_2.1 16.04
+ rte_hash_add_key_with_hash@DPDK_2.0 16.04
+ rte_hash_add_key_with_hash_data@DPDK_2.1 16.04
+ rte_hash_count@DPDK_18.08 18.08
+ rte_hash_create@DPDK_2.0 16.04
+ rte_hash_del_key@DPDK_2.0 16.04
+ rte_hash_del_key_with_hash@DPDK_2.0 16.04
+ rte_hash_find_existing@DPDK_2.0 16.04
+ rte_hash_free@DPDK_2.0 16.04
+ rte_hash_free_key_with_position@EXPERIMENTAL 18.11
+ rte_hash_get_key_with_position@DPDK_16.07 16.07~rc3
+ rte_hash_hash@DPDK_2.0 16.04
+ rte_hash_iterate@DPDK_2.1 16.04
+ rte_hash_lookup@DPDK_2.0 16.04
+ rte_hash_lookup_bulk@DPDK_2.0 16.04
+ rte_hash_lookup_bulk_data@DPDK_2.1 16.04
+ rte_hash_lookup_data@DPDK_2.1 16.04
+ rte_hash_lookup_with_hash@DPDK_2.0 16.04
+ rte_hash_lookup_with_hash_data@DPDK_2.1 16.04
+ rte_hash_reset@DPDK_2.1 16.04
+ rte_hash_set_cmp_func@DPDK_2.2 16.04
diff --git a/debian/librte-ip-frag18.11.symbols b/debian/librte-ip-frag18.11.symbols
new file mode 100644 (file)
index 0000000..b021356
--- /dev/null
@@ -0,0 +1,13 @@
+librte_ip_frag.so.18.11 librte-ip-frag18.11 #MINVER#
+ DPDK_17.08@DPDK_17.08 17.08
+ DPDK_2.0@DPDK_2.0 16.04
+ EXPERIMENTAL@EXPERIMENTAL 18.11
+ rte_frag_table_del_expired_entries@EXPERIMENTAL 18.11
+ rte_ip_frag_free_death_row@DPDK_2.0 16.04
+ rte_ip_frag_table_create@DPDK_2.0 16.04
+ rte_ip_frag_table_destroy@DPDK_17.08 17.08
+ rte_ip_frag_table_statistics_dump@DPDK_2.0 16.04
+ rte_ipv4_frag_reassemble_packet@DPDK_2.0 16.04
+ rte_ipv4_fragment_packet@DPDK_2.0 16.04
+ rte_ipv6_frag_reassemble_packet@DPDK_2.0 16.04
+ rte_ipv6_fragment_packet@DPDK_2.0 16.04
diff --git a/debian/librte-jobstats18.11.symbols b/debian/librte-jobstats18.11.symbols
new file mode 100644 (file)
index 0000000..75c4949
--- /dev/null
@@ -0,0 +1,17 @@
+librte_jobstats.so.18.11 librte-jobstats18.11 #MINVER#
+ DPDK_16.04@DPDK_16.04 16.04
+ DPDK_2.0@DPDK_2.0 16.04
+ rte_jobstats_abort@DPDK_16.04 16.04
+ rte_jobstats_context_finish@DPDK_2.0 16.04
+ rte_jobstats_context_init@DPDK_2.0 16.04
+ rte_jobstats_context_reset@DPDK_2.0 16.04
+ rte_jobstats_context_start@DPDK_2.0 16.04
+ rte_jobstats_finish@DPDK_2.0 16.04
+ rte_jobstats_init@DPDK_2.0 16.04
+ rte_jobstats_reset@DPDK_2.0 16.04
+ rte_jobstats_set_max@DPDK_2.0 16.04
+ rte_jobstats_set_min@DPDK_2.0 16.04
+ rte_jobstats_set_period@DPDK_2.0 16.04
+ rte_jobstats_set_target@DPDK_2.0 16.04
+ rte_jobstats_set_update_period_function@DPDK_2.0 16.04
+ rte_jobstats_start@DPDK_2.0 16.04
diff --git a/debian/librte-kni18.11.symbols b/debian/librte-kni18.11.symbols
new file mode 100644 (file)
index 0000000..5abc95a
--- /dev/null
@@ -0,0 +1,15 @@
+librte_kni.so.18.11 librte-kni18.11 #MINVER#
+ DPDK_2.0@DPDK_2.0 16.04
+ EXPERIMENTAL@EXPERIMENTAL 18.11
+ rte_kni_alloc@DPDK_2.0 16.04
+ rte_kni_close@DPDK_2.0 16.04
+ rte_kni_get@DPDK_2.0 16.04
+ rte_kni_get_name@DPDK_2.0 16.04
+ rte_kni_handle_request@DPDK_2.0 16.04
+ rte_kni_init@DPDK_2.0 16.04
+ rte_kni_register_handlers@DPDK_2.0 16.04
+ rte_kni_release@DPDK_2.0 16.04
+ rte_kni_rx_burst@DPDK_2.0 16.04
+ rte_kni_tx_burst@DPDK_2.0 16.04
+ rte_kni_unregister_handlers@DPDK_2.0 16.04
+ rte_kni_update_link@EXPERIMENTAL 18.11
diff --git a/debian/librte-kvargs18.11.symbols b/debian/librte-kvargs18.11.symbols
new file mode 100644 (file)
index 0000000..0863c86
--- /dev/null
@@ -0,0 +1,9 @@
+librte_kvargs.so.18.11 librte-kvargs18.11 #MINVER#
+ DPDK_2.0@DPDK_2.0 16.04
+ EXPERIMENTAL@EXPERIMENTAL 18.08
+ rte_kvargs_count@DPDK_2.0 16.04
+ rte_kvargs_free@DPDK_2.0 16.04
+ rte_kvargs_parse@DPDK_2.0 16.04
+ rte_kvargs_parse_delim@EXPERIMENTAL 18.08
+ rte_kvargs_process@DPDK_2.0 16.04
+ rte_kvargs_strcmp@EXPERIMENTAL 18.08
diff --git a/debian/librte-latencystats18.11.symbols b/debian/librte-latencystats18.11.symbols
new file mode 100644 (file)
index 0000000..a1cb943
--- /dev/null
@@ -0,0 +1,7 @@
+librte_latencystats.so.18.11 librte-latencystats18.11 #MINVER#
+ DPDK_17.05@DPDK_17.05 17.05
+ rte_latencystats_get@DPDK_17.05 17.05
+ rte_latencystats_get_names@DPDK_17.05 17.05
+ rte_latencystats_init@DPDK_17.05 17.05
+ rte_latencystats_uninit@DPDK_17.05 17.05
+ rte_latencystats_update@DPDK_17.05 17.05
diff --git a/debian/librte-lpm18.11.symbols b/debian/librte-lpm18.11.symbols
new file mode 100644 (file)
index 0000000..01c0d76
--- /dev/null
@@ -0,0 +1,32 @@
+librte_lpm.so.18.11 librte-lpm18.11 #MINVER#
+ DPDK_16.04@DPDK_16.04 16.04
+ DPDK_17.05@DPDK_17.05 17.05
+ DPDK_2.0@DPDK_2.0 16.04
+ rte_lpm6_add@DPDK_17.05 17.05
+ rte_lpm6_add@DPDK_2.0 16.04
+ rte_lpm6_create@DPDK_2.0 16.04
+ rte_lpm6_delete@DPDK_2.0 16.04
+ rte_lpm6_delete_all@DPDK_2.0 16.04
+ rte_lpm6_delete_bulk_func@DPDK_2.0 16.04
+ rte_lpm6_find_existing@DPDK_2.0 16.04
+ rte_lpm6_free@DPDK_2.0 16.04
+ rte_lpm6_is_rule_present@DPDK_17.05 17.05
+ rte_lpm6_is_rule_present@DPDK_2.0 16.04
+ rte_lpm6_lookup@DPDK_17.05 17.05
+ rte_lpm6_lookup@DPDK_2.0 16.04
+ rte_lpm6_lookup_bulk_func@DPDK_17.05 17.05
+ rte_lpm6_lookup_bulk_func@DPDK_2.0 16.04
+ rte_lpm_add@DPDK_16.04 16.04
+ rte_lpm_add@DPDK_2.0 16.04
+ rte_lpm_create@DPDK_16.04 16.04
+ rte_lpm_create@DPDK_2.0 16.04
+ rte_lpm_delete@DPDK_16.04 16.04
+ rte_lpm_delete@DPDK_2.0 16.04
+ rte_lpm_delete_all@DPDK_16.04 16.04
+ rte_lpm_delete_all@DPDK_2.0 16.04
+ rte_lpm_find_existing@DPDK_16.04 16.04
+ rte_lpm_find_existing@DPDK_2.0 16.04
+ rte_lpm_free@DPDK_16.04 16.04
+ rte_lpm_free@DPDK_2.0 16.04
+ rte_lpm_is_rule_present@DPDK_16.04 16.04
+ rte_lpm_is_rule_present@DPDK_2.0 16.04
diff --git a/debian/librte-mbuf18.11.symbols b/debian/librte-mbuf18.11.symbols
new file mode 100644 (file)
index 0000000..a4b3598
--- /dev/null
@@ -0,0 +1,36 @@
+librte_mbuf.so.18.11 librte-mbuf18.11 #MINVER#
+ DPDK_16.11@DPDK_16.11 16.11
+ DPDK_18.08@DPDK_18.08 18.08
+ DPDK_2.0@DPDK_2.0 16.04
+ DPDK_2.1@DPDK_2.1 16.04
+#MISSING: 18.08# EXPERIMENTAL@EXPERIMENTAL 18.02
+ __rte_pktmbuf_read@DPDK_16.11 16.11
+ rte_get_ptype_inner_l2_name@DPDK_16.11 16.11
+ rte_get_ptype_inner_l3_name@DPDK_16.11 16.11
+ rte_get_ptype_inner_l4_name@DPDK_16.11 16.11
+ rte_get_ptype_l2_name@DPDK_16.11 16.11
+ rte_get_ptype_l3_name@DPDK_16.11 16.11
+ rte_get_ptype_l4_name@DPDK_16.11 16.11
+ rte_get_ptype_name@DPDK_16.11 16.11
+ rte_get_ptype_tunnel_name@DPDK_16.11 16.11
+ rte_get_rx_ol_flag_list@DPDK_16.11 16.11
+ rte_get_rx_ol_flag_name@DPDK_2.0 16.04
+ rte_get_tx_ol_flag_list@DPDK_16.11 16.11
+ rte_get_tx_ol_flag_name@DPDK_2.0 16.04
+ rte_mbuf_best_mempool_ops@DPDK_18.08 18.08
+#MISSING: 18.08# rte_mbuf_best_mempool_ops@EXPERIMENTAL 18.02
+ rte_mbuf_platform_mempool_ops@DPDK_18.08 18.08
+#MISSING: 18.08# rte_mbuf_platform_mempool_ops@EXPERIMENTAL 18.02
+ rte_mbuf_sanity_check@DPDK_2.0 16.04
+ rte_mbuf_set_platform_mempool_ops@DPDK_18.08 18.08
+#MISSING: 18.08# rte_mbuf_set_platform_mempool_ops@EXPERIMENTAL 18.02
+ rte_mbuf_set_user_mempool_ops@DPDK_18.08 18.08
+#MISSING: 18.08# rte_mbuf_set_user_mempool_ops@EXPERIMENTAL 18.02
+ rte_mbuf_user_mempool_ops@DPDK_18.08 18.08
+#MISSING: 18.08# rte_mbuf_user_mempool_ops@EXPERIMENTAL 18.02
+ rte_pktmbuf_dump@DPDK_2.0 16.04
+ rte_pktmbuf_init@DPDK_2.0 16.04
+ rte_pktmbuf_pool_create@DPDK_2.1 16.04
+ rte_pktmbuf_pool_create_by_ops@DPDK_18.08 18.08
+#MISSING: 18.08# rte_pktmbuf_pool_create_by_ops@EXPERIMENTAL 18.02
+ rte_pktmbuf_pool_init@DPDK_2.0 16.04
diff --git a/debian/librte-member18.11.symbols b/debian/librte-member18.11.symbols
new file mode 100644 (file)
index 0000000..588802a
--- /dev/null
@@ -0,0 +1,12 @@
+librte_member.so.18.11 librte-member18.11 #MINVER#
+ DPDK_17.11@DPDK_17.11 17.11
+ rte_member_add@DPDK_17.11 17.11
+ rte_member_create@DPDK_17.11 17.11
+ rte_member_delete@DPDK_17.11 17.11
+ rte_member_find_existing@DPDK_17.11 17.11
+ rte_member_free@DPDK_17.11 17.11
+ rte_member_lookup@DPDK_17.11 17.11
+ rte_member_lookup_bulk@DPDK_17.11 17.11
+ rte_member_lookup_multi@DPDK_17.11 17.11
+ rte_member_lookup_multi_bulk@DPDK_17.11 17.11
+ rte_member_reset@DPDK_17.11 17.11
diff --git a/debian/librte-mempool-bucket18.11.symbols b/debian/librte-mempool-bucket18.11.symbols
new file mode 100644 (file)
index 0000000..a96cb0e
--- /dev/null
@@ -0,0 +1,3 @@
+librte_mempool_bucket.so.18.11 librte-mempool-bucket18.11 #MINVER#
+ DPDK_18.05@DPDK_18.05 18.05
+# INFO: this library exports no symbols, it is one of the drivers for mempool
diff --git a/debian/librte-mempool-octeontx18.11.symbols b/debian/librte-mempool-octeontx18.11.symbols
new file mode 100644 (file)
index 0000000..195e5d3
--- /dev/null
@@ -0,0 +1,7 @@
+librte_mempool_octeontx.so.18.11 librte-mempool-octeontx18.11 #MINVER#
+ DPDK_17.11@DPDK_17.11 17.11
+#MISSING: 18.05# octeontx_ssovf_bar@DPDK_17.11 17.11
+#MISSING: 18.05# octeontx_ssovf_info@DPDK_17.11 17.11
+#MISSING: 18.05# octeontx_ssovf_mbox_send@DPDK_17.11 17.11
+# This is odd, as it exports no symbols anymore, but it is still built
+# so keep the empty symbols for now
diff --git a/debian/librte-mempool-ring18.11.symbols b/debian/librte-mempool-ring18.11.symbols
new file mode 100644 (file)
index 0000000..3e92a1c
--- /dev/null
@@ -0,0 +1,3 @@
+librte_mempool_ring.so.18.11 librte-mempool-ring18.11 #MINVER#
+ DPDK_17.05@DPDK_17.05 17.05
+# INFO: this library exports no symbols, it is one of the drivers for mempool
diff --git a/debian/librte-mempool-stack18.11.symbols b/debian/librte-mempool-stack18.11.symbols
new file mode 100644 (file)
index 0000000..4cbc78a
--- /dev/null
@@ -0,0 +1,3 @@
+librte_mempool_stack.so.18.11 librte-mempool-stack18.11 #MINVER#
+ DPDK_17.05@DPDK_17.05 17.05
+# INFO: this library exports no symbols, it is one of the drivers for mempool
diff --git a/debian/librte-mempool18.11.symbols b/debian/librte-mempool18.11.symbols
new file mode 100644 (file)
index 0000000..530cffc
--- /dev/null
@@ -0,0 +1,39 @@
+librte_mempool.so.18.11 librte-mempool18.11 #MINVER#
+ DPDK_16.07@DPDK_16.07 16.07~rc1
+ DPDK_17.11@DPDK_17.11 17.11
+ DPDK_18.05@DPDK_18.05 18.05
+ DPDK_2.0@DPDK_2.0 16.07~rc1
+ EXPERIMENTAL@EXPERIMENTAL 18.05
+ rte_mempool_audit@DPDK_2.0 16.07~rc1
+ rte_mempool_avail_count@DPDK_16.07 16.07~rc1
+ rte_mempool_cache_create@DPDK_16.07 16.07~rc1
+ rte_mempool_cache_free@DPDK_16.07 16.07~rc1
+ rte_mempool_calc_obj_size@DPDK_2.0 16.07~rc1
+ rte_mempool_check_cookies@DPDK_16.07 16.07~rc1
+ rte_mempool_contig_blocks_check_cookies@DPDK_18.05 18.05
+ rte_mempool_create@DPDK_2.0 16.07~rc1
+ rte_mempool_create_empty@DPDK_16.07 16.07~rc1
+ rte_mempool_dump@DPDK_2.0 16.07~rc1
+ rte_mempool_free@DPDK_16.07 16.07~rc1
+ rte_mempool_in_use_count@DPDK_16.07 16.07~rc1
+ rte_mempool_list_dump@DPDK_2.0 16.07~rc1
+ rte_mempool_lookup@DPDK_2.0 16.07~rc1
+ rte_mempool_mem_iter@DPDK_16.07 16.07~rc1
+ rte_mempool_obj_iter@DPDK_16.07 16.07~rc1
+ rte_mempool_op_calc_mem_size_default@DPDK_18.05 18.05
+ rte_mempool_op_populate_default@DPDK_18.05 18.05
+ rte_mempool_ops_get_info@EXPERIMENTAL 18.05
+ rte_mempool_ops_table@DPDK_16.07 16.07~rc1
+ rte_mempool_populate_anon@DPDK_16.07 16.07~rc1
+ rte_mempool_populate_default@DPDK_16.07 16.07~rc1
+ rte_mempool_populate_iova@DPDK_17.11 17.11
+#MISSING: 18.08# rte_mempool_populate_iova_tab@DPDK_17.11 17.11
+#MISSING: 18.08# rte_mempool_populate_phys@DPDK_16.07 16.07~rc1
+#MISSING: 18.08# rte_mempool_populate_phys_tab@DPDK_16.07 16.07~rc1
+ rte_mempool_populate_virt@DPDK_16.07 16.07~rc1
+ rte_mempool_register_ops@DPDK_16.07 16.07~rc1
+ rte_mempool_set_ops_byname@DPDK_16.07 16.07~rc1
+ rte_mempool_walk@DPDK_2.0 16.07~rc1
+#MISSING: 18.08# rte_mempool_xmem_create@DPDK_2.0 16.07~rc1
+#MISSING: 18.08# rte_mempool_xmem_size@DPDK_2.0 16.07~rc1
+#MISSING: 18.08# rte_mempool_xmem_usage@DPDK_2.0 16.07~rc1
diff --git a/debian/librte-meter18.11.symbols b/debian/librte-meter18.11.symbols
new file mode 100644 (file)
index 0000000..b57e842
--- /dev/null
@@ -0,0 +1,10 @@
+librte_meter.so.18.11 librte-meter18.11 #MINVER#
+ DPDK_18.08@DPDK_18.08 18.08
+ DPDK_2.0@DPDK_2.0 16.04
+#MISSING: 18.08# EXPERIMENTAL@EXPERIMENTAL 18.05
+ rte_meter_srtcm_config@DPDK_2.0 16.04
+ rte_meter_srtcm_profile_config@DPDK_18.08 18.08
+#MISSING: 18.08# rte_meter_srtcm_profile_config@EXPERIMENTAL 18.05
+ rte_meter_trtcm_config@DPDK_2.0 16.04
+ rte_meter_trtcm_profile_config@DPDK_18.08 18.08
+#MISSING: 18.08# rte_meter_trtcm_profile_config@EXPERIMENTAL 18.05
diff --git a/debian/librte-metrics18.11.symbols b/debian/librte-metrics18.11.symbols
new file mode 100644 (file)
index 0000000..27ed9cc
--- /dev/null
@@ -0,0 +1,9 @@
+librte_metrics.so.18.11 librte-metrics18.11 #MINVER#
+ DPDK_17.05@DPDK_17.05 17.05
+ rte_metrics_get_names@DPDK_17.05 17.05
+ rte_metrics_get_values@DPDK_17.05 17.05
+ rte_metrics_init@DPDK_17.05 17.05
+ rte_metrics_reg_name@DPDK_17.05 17.05
+ rte_metrics_reg_names@DPDK_17.05 17.05
+ rte_metrics_update_value@DPDK_17.05 17.05
+ rte_metrics_update_values@DPDK_17.05 17.05
diff --git a/debian/librte-net18.11.symbols b/debian/librte-net18.11.symbols
new file mode 100644 (file)
index 0000000..6fa010c
--- /dev/null
@@ -0,0 +1,9 @@
+librte_net.so.18.11 librte-net18.11 #MINVER#
+ DPDK_16.11@DPDK_16.11 16.11
+ DPDK_17.05@DPDK_17.05 17.05
+ EXPERIMENTAL@EXPERIMENTAL 18.02
+ rte_net_crc_calc@DPDK_17.05 17.05
+ rte_net_crc_set_alg@DPDK_17.05 17.05
+ rte_net_get_ptype@DPDK_16.11 16.11
+ rte_net_make_rarp_packet@EXPERIMENTAL 18.02
+ rte_net_skip_ip6_ext@EXPERIMENTAL 18.05
diff --git a/debian/librte-pci18.11.symbols b/debian/librte-pci18.11.symbols
new file mode 100644 (file)
index 0000000..7d2df62
--- /dev/null
@@ -0,0 +1,10 @@
+librte_pci.so.18.11 librte-pci18.11 #MINVER#
+ DPDK_17.11@DPDK_17.11 17.11
+ eal_parse_pci_BDF@DPDK_17.11 17.11
+ eal_parse_pci_DomBDF@DPDK_17.11 17.11
+ pci_map_resource@DPDK_17.11 17.11
+ pci_unmap_resource@DPDK_17.11 17.11
+ rte_eal_compare_pci_addr@DPDK_17.11 17.11
+ rte_pci_addr_cmp@DPDK_17.11 17.11
+ rte_pci_addr_parse@DPDK_17.11 17.11
+ rte_pci_device_name@DPDK_17.11 17.11
diff --git a/debian/librte-pdump18.11.symbols b/debian/librte-pdump18.11.symbols
new file mode 100644 (file)
index 0000000..3c21968
--- /dev/null
@@ -0,0 +1,9 @@
+librte_pdump.so.18.11 librte-pdump18.11 #MINVER#
+ DPDK_16.07@DPDK_16.07 16.07~rc1
+ rte_pdump_disable@DPDK_16.07 16.07~rc1
+ rte_pdump_disable_by_deviceid@DPDK_16.07 16.07~rc1
+ rte_pdump_enable@DPDK_16.07 16.07~rc1
+ rte_pdump_enable_by_deviceid@DPDK_16.07 16.07~rc1
+ rte_pdump_init@DPDK_16.07 16.07~rc1
+ rte_pdump_set_socket_dir@DPDK_16.07 16.07~rc1
+ rte_pdump_uninit@DPDK_16.07 16.07~rc1
diff --git a/debian/librte-pipeline18.11.symbols b/debian/librte-pipeline18.11.symbols
new file mode 100644 (file)
index 0000000..ae305a6
--- /dev/null
@@ -0,0 +1,53 @@
+librte_pipeline.so.18.11 librte-pipeline18.11 #MINVER#
+ DPDK_16.04@DPDK_16.04 16.04
+ DPDK_2.0@DPDK_2.0 16.04
+ DPDK_2.1@DPDK_2.1 16.04
+ DPDK_2.2@DPDK_2.2 16.04
+ EXPERIMENTAL@EXPERIMENTAL 18.05
+ rte_pipeline_ah_packet_drop@DPDK_16.04 16.04
+ rte_pipeline_ah_packet_hijack@DPDK_16.04 16.04
+ rte_pipeline_check@DPDK_2.0 16.04
+ rte_pipeline_create@DPDK_2.0 16.04
+ rte_pipeline_flush@DPDK_2.0 16.04
+ rte_pipeline_free@DPDK_2.0 16.04
+ rte_pipeline_port_in_connect_to_table@DPDK_2.0 16.04
+ rte_pipeline_port_in_create@DPDK_2.0 16.04
+ rte_pipeline_port_in_disable@DPDK_2.0 16.04
+ rte_pipeline_port_in_enable@DPDK_2.0 16.04
+ rte_pipeline_port_in_stats_read@DPDK_2.1 16.04
+ rte_pipeline_port_out_create@DPDK_2.0 16.04
+ rte_pipeline_port_out_packet_insert@DPDK_2.0 16.04
+ rte_pipeline_port_out_stats_read@DPDK_2.1 16.04
+ rte_pipeline_run@DPDK_2.0 16.04
+ rte_pipeline_table_create@DPDK_2.0 16.04
+ rte_pipeline_table_default_entry_add@DPDK_2.0 16.04
+ rte_pipeline_table_default_entry_delete@DPDK_2.0 16.04
+ rte_pipeline_table_entry_add@DPDK_2.0 16.04
+ rte_pipeline_table_entry_add_bulk@DPDK_2.2 16.04
+ rte_pipeline_table_entry_delete@DPDK_2.0 16.04
+ rte_pipeline_table_entry_delete_bulk@DPDK_2.2 16.04
+ rte_pipeline_table_stats_read@DPDK_2.1 16.04
+ rte_port_in_action_apply@EXPERIMENTAL 18.05
+ rte_port_in_action_create@EXPERIMENTAL 18.05
+ rte_port_in_action_free@EXPERIMENTAL 18.05
+ rte_port_in_action_params_get@EXPERIMENTAL 18.05
+ rte_port_in_action_profile_action_register@EXPERIMENTAL 18.05
+ rte_port_in_action_profile_create@EXPERIMENTAL 18.05
+ rte_port_in_action_profile_free@EXPERIMENTAL 18.05
+ rte_port_in_action_profile_freeze@EXPERIMENTAL 18.05
+ rte_table_action_apply@EXPERIMENTAL 18.05
+ rte_table_action_create@EXPERIMENTAL 18.05
+ rte_table_action_crypto_sym_session_get@EXPERIMENTAL 18.11
+ rte_table_action_dscp_table_update@EXPERIMENTAL 18.05
+ rte_table_action_free@EXPERIMENTAL 18.05
+ rte_table_action_meter_profile_add@EXPERIMENTAL 18.05
+ rte_table_action_meter_profile_delete@EXPERIMENTAL 18.05
+ rte_table_action_meter_read@EXPERIMENTAL 18.05
+ rte_table_action_profile_action_register@EXPERIMENTAL 18.05
+ rte_table_action_profile_create@EXPERIMENTAL 18.05
+ rte_table_action_profile_free@EXPERIMENTAL 18.05
+ rte_table_action_profile_freeze@EXPERIMENTAL 18.05
+ rte_table_action_stats_read@EXPERIMENTAL 18.05
+ rte_table_action_table_params_get@EXPERIMENTAL 18.05
+ rte_table_action_time_read@EXPERIMENTAL 18.05
+ rte_table_action_ttl_read@EXPERIMENTAL 18.05
diff --git a/debian/librte-pmd-af-packet18.11.symbols b/debian/librte-pmd-af-packet18.11.symbols
new file mode 100644 (file)
index 0000000..2f83440
--- /dev/null
@@ -0,0 +1,4 @@
+librte_pmd_af_packet.so.18.11 librte-pmd-af-packet18.11 #MINVER#
+ DPDK_2.0@DPDK_2.0 16.04
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
diff --git a/debian/librte-pmd-ark18.11.symbols b/debian/librte-pmd-ark18.11.symbols
new file mode 100644 (file)
index 0000000..f7d3cdd
--- /dev/null
@@ -0,0 +1,4 @@
+librte_pmd_ark.so.18.11 librte-pmd-ark18.11 #MINVER#
+ DPDK_17.05@DPDK_17.05 17.05
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
diff --git a/debian/librte-pmd-atlantic18.11.symbols b/debian/librte-pmd-atlantic18.11.symbols
new file mode 100644 (file)
index 0000000..f8c27f5
--- /dev/null
@@ -0,0 +1,2 @@
+librte_pmd_atlantic.so.18.11 librte-pmd-atlantic18.11 #MINVER#
+ DPDK_18.11@DPDK_18.11 18.11
diff --git a/debian/librte-pmd-avf18.11.symbols b/debian/librte-pmd-avf18.11.symbols
new file mode 100644 (file)
index 0000000..ea20225
--- /dev/null
@@ -0,0 +1,4 @@
+librte_pmd_avf.so.18.11 librte-pmd-avf18.11 #MINVER#
+ DPDK_18.02@DPDK_18.02 18.02
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
diff --git a/debian/librte-pmd-avp18.11.symbols b/debian/librte-pmd-avp18.11.symbols
new file mode 100644 (file)
index 0000000..762d101
--- /dev/null
@@ -0,0 +1,4 @@
+librte_pmd_avp.so.18.11 librte-pmd-avp18.11 #MINVER#
+ DPDK_17.05@DPDK_17.05 17.05
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
diff --git a/debian/librte-pmd-axgbe18.11.symbols b/debian/librte-pmd-axgbe18.11.symbols
new file mode 100644 (file)
index 0000000..0e4f3c3
--- /dev/null
@@ -0,0 +1,4 @@
+librte_pmd_axgbe.so.18.11 librte-pmd-axgbe18.11 #MINVER#
+ DPDK_18.05@DPDK_18.05 18.05
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
diff --git a/debian/librte-pmd-bbdev-null18.11.symbols b/debian/librte-pmd-bbdev-null18.11.symbols
new file mode 100644 (file)
index 0000000..c3e9d02
--- /dev/null
@@ -0,0 +1,4 @@
+librte_pmd_bbdev_null.so.18.11 librte-pmd-bbdev-null18.11 #MINVER#
+ DPDK_18.02@DPDK_18.02 18.02
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
diff --git a/debian/librte-pmd-bnx2x18.11.symbols b/debian/librte-pmd-bnx2x18.11.symbols
new file mode 100644 (file)
index 0000000..434b431
--- /dev/null
@@ -0,0 +1,2 @@
+librte_pmd_bnx2x.so.18.11 librte-pmd-bnx2x18.11 #MINVER#
+ DPDK_2.1@DPDK_2.1 18.08
diff --git a/debian/librte-pmd-bnxt18.11.symbols b/debian/librte-pmd-bnxt18.11.symbols
new file mode 100644 (file)
index 0000000..170299f
--- /dev/null
@@ -0,0 +1,18 @@
+librte_pmd_bnxt.so.18.11 librte-pmd-bnxt18.11 #MINVER#
+ DPDK_17.08@DPDK_17.08 17.08
+ rte_pmd_bnxt_get_vf_rx_status@DPDK_17.08 17.08
+ rte_pmd_bnxt_get_vf_stats@DPDK_17.08 17.08
+ rte_pmd_bnxt_get_vf_tx_drop_count@DPDK_17.08 17.08
+ rte_pmd_bnxt_mac_addr_add@DPDK_17.08 17.08
+ rte_pmd_bnxt_reset_vf_stats@DPDK_17.08 17.08
+ rte_pmd_bnxt_set_all_queues_drop_en@DPDK_17.08 17.08
+ rte_pmd_bnxt_set_tx_loopback@DPDK_17.08 17.08
+ rte_pmd_bnxt_set_vf_mac_addr@DPDK_17.08 17.08
+ rte_pmd_bnxt_set_vf_mac_anti_spoof@DPDK_17.08 17.08
+ rte_pmd_bnxt_set_vf_persist_stats@DPDK_17.08 17.08
+ rte_pmd_bnxt_set_vf_rate_limit@DPDK_17.08 17.08
+ rte_pmd_bnxt_set_vf_rxmode@DPDK_17.08 17.08
+ rte_pmd_bnxt_set_vf_vlan_anti_spoof@DPDK_17.08 17.08
+ rte_pmd_bnxt_set_vf_vlan_filter@DPDK_17.08 17.08
+ rte_pmd_bnxt_set_vf_vlan_insert@DPDK_17.08 17.08
+ rte_pmd_bnxt_set_vf_vlan_stripq@DPDK_17.08 17.08
diff --git a/debian/librte-pmd-bond18.11.symbols b/debian/librte-pmd-bond18.11.symbols
new file mode 100644 (file)
index 0000000..55188c3
--- /dev/null
@@ -0,0 +1,33 @@
+librte_pmd_bond.so.18.11 librte-pmd-bond18.11 #MINVER#
+ DPDK_16.04@DPDK_16.04 16.07~rc1
+ DPDK_16.07@DPDK_16.07 16.07~rc1
+ DPDK_17.08@DPDK_17.08 17.08
+ DPDK_2.0@DPDK_2.0 16.04
+ DPDK_2.1@DPDK_2.1 16.04
+ rte_eth_bond_8023ad_agg_selection_get@DPDK_17.08 17.08
+ rte_eth_bond_8023ad_agg_selection_set@DPDK_17.08 17.08
+ rte_eth_bond_8023ad_conf_get@DPDK_17.08 17.08
+ rte_eth_bond_8023ad_dedicated_queues_disable@DPDK_17.08 17.08
+ rte_eth_bond_8023ad_dedicated_queues_enable@DPDK_17.08 17.08
+ rte_eth_bond_8023ad_ext_collect@DPDK_16.07 16.07~rc1
+ rte_eth_bond_8023ad_ext_collect_get@DPDK_16.07 16.07~rc1
+ rte_eth_bond_8023ad_ext_distrib@DPDK_16.07 16.07~rc1
+ rte_eth_bond_8023ad_ext_distrib_get@DPDK_16.07 16.07~rc1
+ rte_eth_bond_8023ad_ext_slowtx@DPDK_16.07 16.07~rc1
+ rte_eth_bond_8023ad_setup@DPDK_17.08 17.08
+ rte_eth_bond_8023ad_slave_info@DPDK_2.0 18.05
+ rte_eth_bond_active_slaves_get@DPDK_2.0 16.04
+ rte_eth_bond_create@DPDK_2.0 16.04
+ rte_eth_bond_free@DPDK_2.1 16.04
+ rte_eth_bond_link_monitoring_set@DPDK_2.0 16.04
+ rte_eth_bond_mac_address_reset@DPDK_2.0 16.04
+ rte_eth_bond_mac_address_set@DPDK_2.0 16.04
+ rte_eth_bond_mode_get@DPDK_2.0 16.04
+ rte_eth_bond_mode_set@DPDK_2.0 16.04
+ rte_eth_bond_primary_get@DPDK_2.0 16.04
+ rte_eth_bond_primary_set@DPDK_2.0 16.04
+ rte_eth_bond_slave_add@DPDK_2.0 16.04
+ rte_eth_bond_slave_remove@DPDK_2.0 16.04
+ rte_eth_bond_slaves_get@DPDK_2.0 16.04
+ rte_eth_bond_xmit_policy_get@DPDK_2.0 16.04
+ rte_eth_bond_xmit_policy_set@DPDK_2.0 16.04
diff --git a/debian/librte-pmd-caam-jr18.11.symbols b/debian/librte-pmd-caam-jr18.11.symbols
new file mode 100644 (file)
index 0000000..178ac1f
--- /dev/null
@@ -0,0 +1,2 @@
+librte_pmd_caam_jr.so.18.11 librte-pmd-caam-jr18.11 #MINVER#
+ DPDK_18.11@DPDK_18.11 18.11
diff --git a/debian/librte-pmd-ccp18.11.symbols b/debian/librte-pmd-ccp18.11.symbols
new file mode 100644 (file)
index 0000000..03418cf
--- /dev/null
@@ -0,0 +1,2 @@
+librte_pmd_ccp.so.18.11 librte-pmd-ccp18.11 #MINVER#
+ DPDK_18.05@DPDK_18.05 18.05
diff --git a/debian/librte-pmd-crypto-scheduler18.11.symbols b/debian/librte-pmd-crypto-scheduler18.11.symbols
new file mode 100644 (file)
index 0000000..3c22fe1
--- /dev/null
@@ -0,0 +1,38 @@
+librte_pmd_crypto_scheduler.so.18.11 librte-pmd-crypto-scheduler18.11 #MINVER#
+ DPDK_17.02@DPDK_17.02 17.05
+ DPDK_17.05@DPDK_17.05 17.05
+ crypto_scheduler_failover@Base 18.11
+ crypto_scheduler_multicore@Base 18.11
+ crypto_scheduler_pkt_size_based_distr@Base 18.11
+ crypto_scheduler_pmd_info@Base 18.11
+ crypto_scheduler_roundrobin@Base 18.11
+#MISSING: 18.11# cryptodev_driver_id@Base 17.08
+ cryptodev_scheduler_driver_id@Base 18.11
+#MISSING: 18.11# failover_scheduler@Base 17.05
+#MISSING: 18.11# fo_scheduler@Base 17.05
+#MISSING: 18.11# mc_scheduler@Base 17.08
+#MISSING: 18.11# multicore_scheduler@Base 17.08
+#MISSING: 18.11# pkt_size_based_distr_scheduler@Base 17.05
+#MISSING: 18.11# psd_scheduler@Base 17.05
+#MISSING: 18.11# roundrobin_scheduler@Base 17.05
+ rte_crypto_scheduler_pmd_ops@Base 17.05
+ rte_cryptodev_scheduler_load_user_scheduler@DPDK_17.02 17.05
+ rte_cryptodev_scheduler_mode_get@DPDK_17.05 17.05
+ rte_cryptodev_scheduler_mode_set@DPDK_17.05 17.05
+ rte_cryptodev_scheduler_option_get@DPDK_17.05 17.05
+ rte_cryptodev_scheduler_option_set@DPDK_17.05 17.05
+ rte_cryptodev_scheduler_ordering_get@DPDK_17.02 17.05
+ rte_cryptodev_scheduler_ordering_set@DPDK_17.02 17.05
+ rte_cryptodev_scheduler_slave_attach@DPDK_17.02 17.05
+ rte_cryptodev_scheduler_slave_detach@DPDK_17.02 17.05
+ rte_cryptodev_scheduler_slaves_get@DPDK_17.05 17.05
+#MISSING: 18.11# scheduler@Base 17.05
+#MISSING: 18.11# scheduler_fo_ops@Base 17.05
+ scheduler_logtype_driver@Base 18.08
+#MISSING: 18.11# scheduler_mc_ops@Base 17.08
+ scheduler_mode_map@Base 17.05
+ scheduler_ordering_map@Base 17.05
+#MISSING: 18.11# scheduler_pmd_ops@Base 17.05
+#MISSING: 18.11# scheduler_ps_ops@Base 17.05
+#MISSING: 18.11# scheduler_rr_ops@Base 17.05
+#MISSING: 18.11# scheduler_valid_params@Base 17.05
diff --git a/debian/librte-pmd-cxgbe18.11.symbols b/debian/librte-pmd-cxgbe18.11.symbols
new file mode 100644 (file)
index 0000000..277d356
--- /dev/null
@@ -0,0 +1,4 @@
+librte_pmd_cxgbe.so.18.11 librte-pmd-cxgbe18.11 #MINVER#
+ DPDK_2.1@DPDK_2.1 16.04
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
diff --git a/debian/librte-pmd-dpaa-event18.11.symbols b/debian/librte-pmd-dpaa-event18.11.symbols
new file mode 100644 (file)
index 0000000..a98f5df
--- /dev/null
@@ -0,0 +1,4 @@
+librte_pmd_dpaa_event.so.18.11 librte-pmd-dpaa-event18.11 #MINVER#
+ DPDK_18.02@DPDK_18.02 18.05
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
diff --git a/debian/librte-pmd-dpaa-sec18.11.symbols b/debian/librte-pmd-dpaa-sec18.11.symbols
new file mode 100644 (file)
index 0000000..3289a81
--- /dev/null
@@ -0,0 +1,4 @@
+librte_pmd_dpaa_sec.so.18.11 librte-pmd-dpaa-sec18.11 #MINVER#
+ DPDK_17.11@DPDK_17.11 18.05
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
diff --git a/debian/librte-pmd-dpaa18.11.symbols b/debian/librte-pmd-dpaa18.11.symbols
new file mode 100644 (file)
index 0000000..3c4bcd2
--- /dev/null
@@ -0,0 +1,14 @@
+librte_pmd_dpaa.so.18.11 librte-pmd-dpaa18.11 #MINVER#
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
+#
+# This one has some experimental symbols
+ DPDK_17.11@DPDK_17.11 18.05
+ DPDK_18.08@DPDK_18.08 18.08
+#MISSING: 18.08# EXPERIMENTAL@EXPERIMENTAL 18.05
+ dpaa_eth_eventq_attach@DPDK_18.08 18.08
+#MISSING: 18.08# dpaa_eth_eventq_attach@EXPERIMENTAL 18.05
+ dpaa_eth_eventq_detach@DPDK_18.08 18.08
+#MISSING: 18.08# dpaa_eth_eventq_detach@EXPERIMENTAL 18.05
+ rte_pmd_dpaa_set_tx_loopback@DPDK_18.08 18.08
+#MISSING: 18.08# rte_pmd_dpaa_set_tx_loopback@EXPERIMENTAL 18.05
diff --git a/debian/librte-pmd-dpaa2-18.11.symbols b/debian/librte-pmd-dpaa2-18.11.symbols
new file mode 100644 (file)
index 0000000..8f87bca
--- /dev/null
@@ -0,0 +1,9 @@
+librte_pmd_dpaa2.so.18.11 librte-pmd-dpaa2-18.11 #MINVER#
+ DPDK_17.05@DPDK_17.05 18.05
+ DPDK_17.11@DPDK_17.11 18.05
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
+#
+# This one has some experimental symbols
+ dpaa2_eth_eventq_attach@DPDK_17.11 18.05
+ dpaa2_eth_eventq_detach@DPDK_17.11 18.05
diff --git a/debian/librte-pmd-dpaa2-cmdif18.11.symbols b/debian/librte-pmd-dpaa2-cmdif18.11.symbols
new file mode 100644 (file)
index 0000000..c32ba6a
--- /dev/null
@@ -0,0 +1,4 @@
+librte_pmd_dpaa2_cmdif.so.18.11 librte-pmd-dpaa2-cmdif18.11 #MINVER#
+ DPDK_18.05@DPDK_18.05 18.05
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
diff --git a/debian/librte-pmd-dpaa2-event18.11.symbols b/debian/librte-pmd-dpaa2-event18.11.symbols
new file mode 100644 (file)
index 0000000..8060259
--- /dev/null
@@ -0,0 +1,4 @@
+librte_pmd_dpaa2_event.so.18.11 librte-pmd-dpaa2-event18.11 #MINVER#
+ DPDK_17.08@DPDK_17.08 18.05
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
diff --git a/debian/librte-pmd-dpaa2-qdma18.11.symbols b/debian/librte-pmd-dpaa2-qdma18.11.symbols
new file mode 100644 (file)
index 0000000..0fb1168
--- /dev/null
@@ -0,0 +1,17 @@
+librte_pmd_dpaa2_qdma.so.18.11 librte-pmd-dpaa2-qdma18.11 #MINVER#
+# Only experimental symbols for now
+ EXPERIMENTAL@EXPERIMENTAL 18.05
+ rte_qdma_attr_get@EXPERIMENTAL 18.05
+ rte_qdma_configure@EXPERIMENTAL 18.05
+ rte_qdma_destroy@EXPERIMENTAL 18.05
+ rte_qdma_init@EXPERIMENTAL 18.05
+ rte_qdma_reset@EXPERIMENTAL 18.05
+ rte_qdma_start@EXPERIMENTAL 18.05
+ rte_qdma_stop@EXPERIMENTAL 18.05
+ rte_qdma_vq_create@EXPERIMENTAL 18.05
+ rte_qdma_vq_dequeue@EXPERIMENTAL 18.05
+ rte_qdma_vq_dequeue_multi@EXPERIMENTAL 18.05
+ rte_qdma_vq_destroy@EXPERIMENTAL 18.05
+ rte_qdma_vq_enqueue@EXPERIMENTAL 18.05
+ rte_qdma_vq_enqueue_multi@EXPERIMENTAL 18.05
+ rte_qdma_vq_stats@EXPERIMENTAL 18.05
diff --git a/debian/librte-pmd-dpaa2-sec18.11.symbols b/debian/librte-pmd-dpaa2-sec18.11.symbols
new file mode 100644 (file)
index 0000000..b3c15d9
--- /dev/null
@@ -0,0 +1,7 @@
+librte_pmd_dpaa2_sec.so.18.11 librte-pmd-dpaa2-sec18.11 #MINVER#
+ DPDK_17.05@DPDK_17.05 18.05
+ DPDK_18.11@DPDK_18.11 18.11
+ dpaa2_sec_eventq_attach@DPDK_18.11 18.11
+ dpaa2_sec_eventq_detach@DPDK_18.11 18.11
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
diff --git a/debian/librte-pmd-dsw-event18.11.symbols b/debian/librte-pmd-dsw-event18.11.symbols
new file mode 100644 (file)
index 0000000..59ad2ad
--- /dev/null
@@ -0,0 +1,2 @@
+librte_pmd_dsw_event.so.18.11 librte-pmd-dsw-event18.11 #MINVER#
+ DPDK_18.11@DPDK_18.11 18.11
diff --git a/debian/librte-pmd-e1000-18.11.symbols b/debian/librte-pmd-e1000-18.11.symbols
new file mode 100644 (file)
index 0000000..aa25250
--- /dev/null
@@ -0,0 +1,4 @@
+librte_pmd_e1000.so.18.11 librte-pmd-e1000-18.11 #MINVER#
+ DPDK_2.0@DPDK_2.0 16.04
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
diff --git a/debian/librte-pmd-ena18.11.symbols b/debian/librte-pmd-ena18.11.symbols
new file mode 100644 (file)
index 0000000..00ed8c5
--- /dev/null
@@ -0,0 +1,4 @@
+librte_pmd_ena.so.18.11 librte-pmd-ena18.11 #MINVER#
+ DPDK_16.04@DPDK_16.04 16.04
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
diff --git a/debian/librte-pmd-enetc18.11.symbols b/debian/librte-pmd-enetc18.11.symbols
new file mode 100644 (file)
index 0000000..ee1d6c3
--- /dev/null
@@ -0,0 +1,4 @@
+librte_pmd_enetc.so.18.11 librte-pmd-enetc18.11 #MINVER#
+ DPDK_18.11@DPDK_18.11 18.11
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
diff --git a/debian/librte-pmd-enic18.11.symbols b/debian/librte-pmd-enic18.11.symbols
new file mode 100644 (file)
index 0000000..a58fac8
--- /dev/null
@@ -0,0 +1,4 @@
+librte_pmd_enic.so.18.11 librte-pmd-enic18.11 #MINVER#
+ DPDK_2.0@DPDK_2.0 16.04
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
diff --git a/debian/librte-pmd-fm10k18.11.symbols b/debian/librte-pmd-fm10k18.11.symbols
new file mode 100644 (file)
index 0000000..6f32465
--- /dev/null
@@ -0,0 +1,4 @@
+librte_pmd_fm10k.so.18.11 librte-pmd-fm10k18.11 #MINVER#
+ DPDK_2.0@DPDK_2.0 16.04
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
diff --git a/debian/librte-pmd-i40e18.11.symbols b/debian/librte-pmd-i40e18.11.symbols
new file mode 100644 (file)
index 0000000..12774fe
--- /dev/null
@@ -0,0 +1,41 @@
+librte_pmd_i40e.so.18.11 librte-pmd-i40e18.11 #MINVER#
+ DPDK_17.02@DPDK_17.02 17.05
+ DPDK_17.05@DPDK_17.05 17.05
+ DPDK_17.08@DPDK_17.08 17.08
+ DPDK_17.11@DPDK_17.11 17.11
+ DPDK_18.02@DPDK_18.02 18.02
+ DPDK_2.0@DPDK_2.0 16.04
+ rte_pmd_i40e_add_vf_mac_addr@DPDK_17.11 17.11
+ rte_pmd_i40e_flow_add_del_packet_template@DPDK_17.11 17.11
+ rte_pmd_i40e_flow_type_mapping_get@DPDK_17.11 17.11
+ rte_pmd_i40e_flow_type_mapping_reset@DPDK_17.11 17.11
+ rte_pmd_i40e_flow_type_mapping_update@DPDK_17.11 17.11
+ rte_pmd_i40e_get_ddp_info@DPDK_17.08 17.08
+ rte_pmd_i40e_get_ddp_list@DPDK_17.05 17.05
+ rte_pmd_i40e_get_vf_stats@DPDK_17.02 17.05
+ rte_pmd_i40e_inset_get@DPDK_18.02 18.02
+ rte_pmd_i40e_inset_set@DPDK_18.02 18.02
+ rte_pmd_i40e_ping_vfs@DPDK_17.02 17.05
+ rte_pmd_i40e_process_ddp_package@DPDK_17.05 17.05
+ rte_pmd_i40e_ptype_mapping_get@DPDK_17.02 17.05
+ rte_pmd_i40e_ptype_mapping_replace@DPDK_17.02 17.05
+ rte_pmd_i40e_ptype_mapping_reset@DPDK_17.02 17.05
+ rte_pmd_i40e_ptype_mapping_update@DPDK_17.02 17.05
+ rte_pmd_i40e_query_vfid_by_mac@DPDK_17.11 17.11
+ rte_pmd_i40e_reset_vf_stats@DPDK_17.02 17.05
+ rte_pmd_i40e_rss_queue_region_conf@DPDK_17.11 17.11
+ rte_pmd_i40e_set_tc_strict_prio@DPDK_17.05 17.05
+ rte_pmd_i40e_set_tx_loopback@DPDK_17.02 17.05
+ rte_pmd_i40e_set_vf_broadcast@DPDK_17.02 17.05
+ rte_pmd_i40e_set_vf_mac_addr@DPDK_17.02 17.05
+ rte_pmd_i40e_set_vf_mac_anti_spoof@DPDK_17.02 17.05
+ rte_pmd_i40e_set_vf_max_bw@DPDK_17.05 17.05
+ rte_pmd_i40e_set_vf_multicast_promisc@DPDK_17.02 17.05
+ rte_pmd_i40e_set_vf_tc_bw_alloc@DPDK_17.05 17.05
+ rte_pmd_i40e_set_vf_tc_max_bw@DPDK_17.05 17.05
+ rte_pmd_i40e_set_vf_unicast_promisc@DPDK_17.02 17.05
+ rte_pmd_i40e_set_vf_vlan_anti_spoof@DPDK_17.02 17.05
+ rte_pmd_i40e_set_vf_vlan_filter@DPDK_17.02 17.05
+ rte_pmd_i40e_set_vf_vlan_insert@DPDK_17.02 17.05
+ rte_pmd_i40e_set_vf_vlan_stripq@DPDK_17.02 17.05
+ rte_pmd_i40e_set_vf_vlan_tag@DPDK_17.02 17.05
diff --git a/debian/librte-pmd-ifc18.11.symbols b/debian/librte-pmd-ifc18.11.symbols
new file mode 100644 (file)
index 0000000..33df5c4
--- /dev/null
@@ -0,0 +1,4 @@
+librte_pmd_ifc.so.18.11 librte-pmd-ifc18.11 #MINVER#
+ DPDK_18.05@DPDK_18.05 18.08
+# INFO: this library exports no symbols, it is like a PMD relying
+# on callbacks once registered
diff --git a/debian/librte-pmd-ifpga-rawdev18.11.symbols b/debian/librte-pmd-ifpga-rawdev18.11.symbols
new file mode 100644 (file)
index 0000000..c03619c
--- /dev/null
@@ -0,0 +1,4 @@
+librte_pmd_ifpga_rawdev.so.18.11 librte-pmd-ifpga-rawdev18.11 #MINVER#
+ DPDK_18.05@DPDK_18.05 18.05
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
diff --git a/debian/librte-pmd-ixgbe18.11.symbols b/debian/librte-pmd-ixgbe18.11.symbols
new file mode 100644 (file)
index 0000000..08ad52b
--- /dev/null
@@ -0,0 +1,42 @@
+librte_pmd_ixgbe.so.18.11 librte-pmd-ixgbe18.11 #MINVER#
+ DPDK_16.11@DPDK_16.11 16.11
+ DPDK_17.02@DPDK_17.02 17.05
+ DPDK_17.05@DPDK_17.05 17.05
+ DPDK_17.08@DPDK_17.08 17.08
+ DPDK_2.0@DPDK_2.0 16.04
+ EXPERIMENTAL@EXPERIMENTAL 18.05
+ rte_pmd_ixgbe_bypass_event_show@DPDK_17.08 18.08
+ rte_pmd_ixgbe_bypass_event_store@DPDK_17.08 18.08
+ rte_pmd_ixgbe_bypass_init@DPDK_17.08 18.08
+ rte_pmd_ixgbe_bypass_state_set@DPDK_17.08 18.08
+ rte_pmd_ixgbe_bypass_state_show@DPDK_17.08 18.08
+ rte_pmd_ixgbe_bypass_ver_show@DPDK_17.08 18.08
+ rte_pmd_ixgbe_bypass_wd_reset@DPDK_17.08 18.08
+ rte_pmd_ixgbe_bypass_wd_timeout_show@DPDK_17.08 18.08
+ rte_pmd_ixgbe_bypass_wd_timeout_store@DPDK_17.08 18.08
+ rte_pmd_ixgbe_macsec_config_rxsc@DPDK_17.02 17.05
+ rte_pmd_ixgbe_macsec_config_txsc@DPDK_17.02 17.05
+ rte_pmd_ixgbe_macsec_disable@DPDK_17.02 17.05
+ rte_pmd_ixgbe_macsec_enable@DPDK_17.02 17.05
+ rte_pmd_ixgbe_macsec_select_rxsa@DPDK_17.02 17.05
+ rte_pmd_ixgbe_macsec_select_txsa@DPDK_17.02 17.05
+ rte_pmd_ixgbe_mdio_lock@EXPERIMENTAL 18.05
+ rte_pmd_ixgbe_mdio_unlock@EXPERIMENTAL 18.05
+ rte_pmd_ixgbe_mdio_unlocked_read@EXPERIMENTAL 18.05
+ rte_pmd_ixgbe_mdio_unlocked_write@EXPERIMENTAL 18.05
+ rte_pmd_ixgbe_ping_vf@DPDK_17.05 17.05
+ rte_pmd_ixgbe_set_all_queues_drop_en@DPDK_16.11 16.11
+ rte_pmd_ixgbe_set_tc_bw_alloc@DPDK_17.05 17.05
+ rte_pmd_ixgbe_set_tx_loopback@DPDK_16.11 16.11
+ rte_pmd_ixgbe_set_vf_mac_addr@DPDK_16.11 16.11
+ rte_pmd_ixgbe_set_vf_mac_anti_spoof@DPDK_16.11 16.11
+ rte_pmd_ixgbe_set_vf_rate_limit@DPDK_17.02 17.05
+ rte_pmd_ixgbe_set_vf_rx@DPDK_17.02 17.05
+ rte_pmd_ixgbe_set_vf_rxmode@DPDK_17.02 17.05
+ rte_pmd_ixgbe_set_vf_split_drop_en@DPDK_16.11 16.11
+ rte_pmd_ixgbe_set_vf_tx@DPDK_17.02 17.05
+ rte_pmd_ixgbe_set_vf_vlan_anti_spoof@DPDK_16.11 16.11
+ rte_pmd_ixgbe_set_vf_vlan_filter@DPDK_17.02 17.05
+ rte_pmd_ixgbe_set_vf_vlan_insert@DPDK_16.11 16.11
+ rte_pmd_ixgbe_set_vf_vlan_stripq@DPDK_16.11 16.11
+ rte_pmd_ixgbe_upd_fctrl_sbp@EXPERIMENTAL 18.05
diff --git a/debian/librte-pmd-kni18.11.symbols b/debian/librte-pmd-kni18.11.symbols
new file mode 100644 (file)
index 0000000..b724527
--- /dev/null
@@ -0,0 +1,4 @@
+librte_pmd_kni.so.18.11 librte-pmd-kni18.11 #MINVER#
+ DPDK_17.05@DPDK_17.05 17.05
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
diff --git a/debian/librte-pmd-liquidio18.11.symbols b/debian/librte-pmd-liquidio18.11.symbols
new file mode 100644 (file)
index 0000000..444b916
--- /dev/null
@@ -0,0 +1,4 @@
+librte_pmd_liquidio.so.18.11 librte-pmd-liquidio18.11 #MINVER#
+ DPDK_17.05@DPDK_17.05 17.05
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
diff --git a/debian/librte-pmd-mlx4-18.11.symbols b/debian/librte-pmd-mlx4-18.11.symbols
new file mode 100644 (file)
index 0000000..2528d8e
--- /dev/null
@@ -0,0 +1,5 @@
+librte_pmd_mlx4.so.18.11 librte-pmd-mlx4-18.11 #MINVER#
+# Built since 18.02 due to rdma-core being available
+ DPDK_2.0@DPDK_2.0 18.02
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
diff --git a/debian/librte-pmd-mlx5-18.11.symbols b/debian/librte-pmd-mlx5-18.11.symbols
new file mode 100644 (file)
index 0000000..0b6fcb4
--- /dev/null
@@ -0,0 +1,5 @@
+librte_pmd_mlx5.so.18.11 librte-pmd-mlx5-18.11 #MINVER#
+# Built since 18.02 due to rdma-core being available
+ DPDK_2.2@DPDK_2.2 18.02
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
diff --git a/debian/librte-pmd-netvsc18.11.symbols b/debian/librte-pmd-netvsc18.11.symbols
new file mode 100644 (file)
index 0000000..0f533d7
--- /dev/null
@@ -0,0 +1,2 @@
+librte_pmd_netvsc.so.18.11 librte-pmd-netvsc18.11 #MINVER#
+ DPDK_18.08@DPDK_18.08 18.08
diff --git a/debian/librte-pmd-nfp18.11.symbols b/debian/librte-pmd-nfp18.11.symbols
new file mode 100644 (file)
index 0000000..2f458da
--- /dev/null
@@ -0,0 +1,5 @@
+librte_pmd_nfp.so.18.11 librte-pmd-nfp18.11 #MINVER#
+# was not built before 17.05
+ DPDK_2.2@DPDK_2.2 17.05
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
diff --git a/debian/librte-pmd-null-crypto18.11.symbols b/debian/librte-pmd-null-crypto18.11.symbols
new file mode 100644 (file)
index 0000000..8495186
--- /dev/null
@@ -0,0 +1,4 @@
+librte_pmd_null_crypto.so.18.11 librte-pmd-null-crypto18.11 #MINVER#
+ DPDK_16.04@DPDK_16.04 16.04
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
diff --git a/debian/librte-pmd-null18.11.symbols b/debian/librte-pmd-null18.11.symbols
new file mode 100644 (file)
index 0000000..889669b
--- /dev/null
@@ -0,0 +1,4 @@
+librte_pmd_null.so.18.11 librte-pmd-null18.11 #MINVER#
+ DPDK_2.0@DPDK_2.0 16.04
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
diff --git a/debian/librte-pmd-octeontx-compress18.11.symbols b/debian/librte-pmd-octeontx-compress18.11.symbols
new file mode 100644 (file)
index 0000000..0850075
--- /dev/null
@@ -0,0 +1,2 @@
+librte_pmd_octeontx_compress.so.18.11 librte-pmd-octeontx-compress18.11 #MINVER#
+ DPDK_18.08@DPDK_18.08 18.08
diff --git a/debian/librte-pmd-octeontx-crypto18.11.symbols b/debian/librte-pmd-octeontx-crypto18.11.symbols
new file mode 100644 (file)
index 0000000..3962c08
--- /dev/null
@@ -0,0 +1,2 @@
+librte_pmd_octeontx_crypto.so.18.11 librte-pmd-octeontx-crypto18.11 #MINVER#
+ DPDK_18.11@DPDK_18.11 18.11
diff --git a/debian/librte-pmd-octeontx-event18.11.symbols b/debian/librte-pmd-octeontx-event18.11.symbols
new file mode 100644 (file)
index 0000000..e08065f
--- /dev/null
@@ -0,0 +1,2 @@
+librte_pmd_octeontx_event.so.18.11 librte-pmd-octeontx-event18.11 #MINVER#
+ DPDK_17.05@DPDK_17.05 17.05
diff --git a/debian/librte-pmd-octeontx18.11.symbols b/debian/librte-pmd-octeontx18.11.symbols
new file mode 100644 (file)
index 0000000..6fbaa5a
--- /dev/null
@@ -0,0 +1,4 @@
+librte_pmd_octeontx.so.18.11 librte-pmd-octeontx18.11 #MINVER#
+ DPDK_17.11@DPDK_17.11 17.11
+ DPDK_18.02@DPDK_18.02 18.02
+ rte_octeontx_pchan_map@DPDK_18.02 18.02
diff --git a/debian/librte-pmd-opdl-event18.11.symbols b/debian/librte-pmd-opdl-event18.11.symbols
new file mode 100644 (file)
index 0000000..0a3a4d6
--- /dev/null
@@ -0,0 +1,4 @@
+librte_pmd_opdl_event.so.18.11 librte-pmd-opdl-event18.11 #MINVER#
+ DPDK_18.02@DPDK_18.02 18.02
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
diff --git a/debian/librte-pmd-openssl18.11.symbols b/debian/librte-pmd-openssl18.11.symbols
new file mode 100644 (file)
index 0000000..91cab85
--- /dev/null
@@ -0,0 +1,4 @@
+librte_pmd_openssl.so.18.11 librte-pmd-openssl18.11 #MINVER#
+ DPDK_16.11@DPDK_16.11 18.02
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
diff --git a/debian/librte-pmd-pcap18.11.symbols b/debian/librte-pmd-pcap18.11.symbols
new file mode 100644 (file)
index 0000000..f6cc47e
--- /dev/null
@@ -0,0 +1,4 @@
+librte_pmd_pcap.so.18.11 librte-pmd-pcap18.11 #MINVER#
+ DPDK_2.0@DPDK_2.0 16.04
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
diff --git a/debian/librte-pmd-qat18.11.symbols b/debian/librte-pmd-qat18.11.symbols
new file mode 100644 (file)
index 0000000..be89057
--- /dev/null
@@ -0,0 +1,2 @@
+librte_pmd_qat.so.18.11 librte-pmd-qat18.11 #MINVER#
+ DPDK_18.08@DPDK_18.08 18.08
diff --git a/debian/librte-pmd-qede18.11.symbols b/debian/librte-pmd-qede18.11.symbols
new file mode 100644 (file)
index 0000000..79c520f
--- /dev/null
@@ -0,0 +1,4 @@
+librte_pmd_qede.so.18.11 librte-pmd-qede18.11 #MINVER#
+ DPDK_16.04@DPDK_16.04 16.11
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
diff --git a/debian/librte-pmd-ring18.11.symbols b/debian/librte-pmd-ring18.11.symbols
new file mode 100644 (file)
index 0000000..735b20a
--- /dev/null
@@ -0,0 +1,5 @@
+librte_pmd_ring.so.18.11 librte-pmd-ring18.11 #MINVER#
+ DPDK_2.0@DPDK_2.0 16.04
+ DPDK_2.2@DPDK_2.2 16.04
+ rte_eth_from_ring@DPDK_2.2 16.04
+ rte_eth_from_rings@DPDK_2.0 16.04
diff --git a/debian/librte-pmd-sfc18.11.symbols b/debian/librte-pmd-sfc18.11.symbols
new file mode 100644 (file)
index 0000000..17fcba4
--- /dev/null
@@ -0,0 +1,4 @@
+librte_pmd_sfc.so.18.11 librte-pmd-sfc18.11 #MINVER#
+ DPDK_17.02@DPDK_17.02 17.05
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
diff --git a/debian/librte-pmd-skeleton-event18.11.symbols b/debian/librte-pmd-skeleton-event18.11.symbols
new file mode 100644 (file)
index 0000000..aec30af
--- /dev/null
@@ -0,0 +1,4 @@
+librte_pmd_skeleton_event.so.18.11 librte-pmd-skeleton-event18.11 #MINVER#
+ DPDK_17.05@DPDK_17.05 17.05
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
diff --git a/debian/librte-pmd-skeleton-rawdev18.11.symbols b/debian/librte-pmd-skeleton-rawdev18.11.symbols
new file mode 100644 (file)
index 0000000..09189a3
--- /dev/null
@@ -0,0 +1,4 @@
+librte_pmd_skeleton_rawdev.so.18.11 librte-pmd-skeleton-rawdev18.11 #MINVER#
+ DPDK_18.02@DPDK_18.02 18.02
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
diff --git a/debian/librte-pmd-softnic18.11.symbols b/debian/librte-pmd-softnic18.11.symbols
new file mode 100644 (file)
index 0000000..0f13744
--- /dev/null
@@ -0,0 +1,5 @@
+librte_pmd_softnic.so.18.11 librte-pmd-softnic18.11 #MINVER#
+ DPDK_17.11@DPDK_17.11 17.11
+ EXPERIMENTAL@EXPERIMENTAL 18.08
+ rte_pmd_softnic_manage@EXPERIMENTAL 18.08
+ rte_pmd_softnic_run@DPDK_17.11 17.11
diff --git a/debian/librte-pmd-sw-event18.11.symbols b/debian/librte-pmd-sw-event18.11.symbols
new file mode 100644 (file)
index 0000000..211a146
--- /dev/null
@@ -0,0 +1,4 @@
+librte_pmd_sw_event.so.18.11 librte-pmd-sw-event18.11 #MINVER#
+ DPDK_17.05@DPDK_17.05 17.05
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
diff --git a/debian/librte-pmd-tap18.11.symbols b/debian/librte-pmd-tap18.11.symbols
new file mode 100644 (file)
index 0000000..3fab737
--- /dev/null
@@ -0,0 +1,4 @@
+librte_pmd_tap.so.18.11 librte-pmd-tap18.11 #MINVER#
+ DPDK_17.02@DPDK_17.02 17.05
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
diff --git a/debian/librte-pmd-thunderx18.11.symbols b/debian/librte-pmd-thunderx18.11.symbols
new file mode 100644 (file)
index 0000000..5e5136c
--- /dev/null
@@ -0,0 +1,5 @@
+librte_pmd_thunderx.so.18.11 librte-pmd-thunderx18.11 #MINVER#
+# was not built before 17.05
+ DPDK_16.07@DPDK_16.07 17.05
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
diff --git a/debian/librte-pmd-vdev-netvsc18.11.symbols b/debian/librte-pmd-vdev-netvsc18.11.symbols
new file mode 100644 (file)
index 0000000..eb6e770
--- /dev/null
@@ -0,0 +1,4 @@
+librte_pmd_vdev_netvsc.so.18.11 librte-pmd-vdev-netvsc18.11 #MINVER#
+ DPDK_18.02@DPDK_18.02 18.02
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
diff --git a/debian/librte-pmd-vhost18.11.symbols b/debian/librte-pmd-vhost18.11.symbols
new file mode 100644 (file)
index 0000000..56b6788
--- /dev/null
@@ -0,0 +1,5 @@
+librte_pmd_vhost.so.18.11 librte-pmd-vhost18.11 #MINVER#
+ DPDK_16.04@DPDK_16.04 16.04
+ DPDK_16.11@DPDK_16.11 16.11
+ rte_eth_vhost_get_queue_event@DPDK_16.04 16.04
+ rte_eth_vhost_get_vid_from_port_id@DPDK_16.11 16.11
diff --git a/debian/librte-pmd-virtio-crypto18.11.symbols b/debian/librte-pmd-virtio-crypto18.11.symbols
new file mode 100644 (file)
index 0000000..4a35c29
--- /dev/null
@@ -0,0 +1,4 @@
+librte_pmd_virtio_crypto.so.18.11 librte-pmd-virtio-crypto18.11 #MINVER#
+ DPDK_18.05@DPDK_18.05 18.05
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
diff --git a/debian/librte-pmd-virtio18.11.symbols b/debian/librte-pmd-virtio18.11.symbols
new file mode 100644 (file)
index 0000000..5d11524
--- /dev/null
@@ -0,0 +1,4 @@
+librte_pmd_virtio.so.18.11 librte-pmd-virtio18.11 #MINVER#
+ DPDK_2.0@DPDK_2.0 16.04
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
diff --git a/debian/librte-pmd-vmxnet3-18.11.symbols b/debian/librte-pmd-vmxnet3-18.11.symbols
new file mode 100644 (file)
index 0000000..5b44fe9
--- /dev/null
@@ -0,0 +1,4 @@
+librte_pmd_vmxnet3.so.18.11 librte-pmd-vmxnet3-18.11 #MINVER#
+ DPDK_2.0@DPDK_2.0 16.04
+# INFO: this library exports no symbols, essentially it is a driver that
+# registers itself on load and is then only driven by callbacks.
diff --git a/debian/librte-pmd-zlib18.11.symbols b/debian/librte-pmd-zlib18.11.symbols
new file mode 100644 (file)
index 0000000..e94526c
--- /dev/null
@@ -0,0 +1,2 @@
+librte_pmd_zlib.so.18.11 librte-pmd-zlib18.11 #MINVER#
+ DPDK_18.08@DPDK_18.08 18.08
diff --git a/debian/librte-port18.11.symbols b/debian/librte-port18.11.symbols
new file mode 100644 (file)
index 0000000..9e51ef2
--- /dev/null
@@ -0,0 +1,33 @@
+librte_port.so.18.11 librte-port18.11 #MINVER#
+ DPDK_16.07@DPDK_16.07 16.07~rc1
+ DPDK_16.11@DPDK_16.11 16.11
+ DPDK_18.11@DPDK_18.11 18.11
+ DPDK_2.0@DPDK_2.0 16.07~rc1
+ DPDK_2.1@DPDK_2.1 16.07~rc1
+ DPDK_2.2@DPDK_2.2 16.07~rc1
+ rte_port_ethdev_reader_ops@DPDK_2.0 16.07~rc1
+ rte_port_ethdev_writer_nodrop_ops@DPDK_2.1 16.07~rc1
+ rte_port_ethdev_writer_ops@DPDK_2.0 16.07~rc1
+ rte_port_fd_reader_ops@DPDK_16.11 16.11
+ rte_port_fd_writer_nodrop_ops@DPDK_16.11 16.11
+ rte_port_fd_writer_ops@DPDK_16.11 16.11
+ (arch=!i386 !armhf)rte_port_kni_reader_ops@DPDK_16.07 16.07~rc1
+ (arch=!i386 !armhf)rte_port_kni_writer_nodrop_ops@DPDK_16.07 16.07~rc1
+ (arch=!i386 !armhf)rte_port_kni_writer_ops@DPDK_16.07 16.07~rc1
+ rte_port_ring_multi_reader_ops@DPDK_2.2 16.07~rc1
+ rte_port_ring_multi_writer_nodrop_ops@DPDK_2.2 16.07~rc1
+ rte_port_ring_multi_writer_ops@DPDK_2.2 16.07~rc1
+ rte_port_ring_reader_ipv4_frag_ops@DPDK_2.0 16.07~rc1
+ rte_port_ring_reader_ipv6_frag_ops@DPDK_2.1 16.07~rc1
+ rte_port_ring_reader_ops@DPDK_2.0 16.07~rc1
+ rte_port_ring_writer_ipv4_ras_ops@DPDK_2.0 16.07~rc1
+ rte_port_ring_writer_ipv6_ras_ops@DPDK_2.1 16.07~rc1
+ rte_port_ring_writer_nodrop_ops@DPDK_2.1 16.07~rc1
+ rte_port_ring_writer_ops@DPDK_2.0 16.07~rc1
+ rte_port_sched_reader_ops@DPDK_2.0 16.07~rc1
+ rte_port_sched_writer_ops@DPDK_2.0 16.07~rc1
+ rte_port_sink_ops@DPDK_2.0 16.07~rc1
+ rte_port_source_ops@DPDK_2.0 16.07~rc1
+ rte_port_sym_crypto_reader_ops@DPDK_18.11 18.11
+ rte_port_sym_crypto_writer_nodrop_ops@DPDK_18.11 18.11
+ rte_port_sym_crypto_writer_ops@DPDK_18.11 18.11
diff --git a/debian/librte-power18.11.symbols b/debian/librte-power18.11.symbols
new file mode 100644 (file)
index 0000000..532bbb9
--- /dev/null
@@ -0,0 +1,29 @@
+librte_power.so.18.11 librte-power18.11 #MINVER#
+ DPDK_17.11@DPDK_17.11 17.11
+ DPDK_18.08@DPDK_18.08 18.08
+ DPDK_2.0@DPDK_2.0 16.04
+ EXPERIMENTAL@EXPERIMENTAL 18.11
+ rte_empty_poll_detection@EXPERIMENTAL 18.11
+ rte_power_empty_poll_stat_fetch@EXPERIMENTAL 18.11
+ rte_power_empty_poll_stat_free@EXPERIMENTAL 18.11
+ rte_power_empty_poll_stat_init@EXPERIMENTAL 18.11
+ rte_power_empty_poll_stat_update@EXPERIMENTAL 18.11
+ rte_power_exit@DPDK_2.0 16.04
+ rte_power_freq_disable_turbo@DPDK_17.11 17.11
+ rte_power_freq_down@DPDK_2.0 16.04
+ rte_power_freq_enable_turbo@DPDK_17.11 17.11
+ rte_power_freq_max@DPDK_2.0 16.04
+ rte_power_freq_min@DPDK_2.0 16.04
+ rte_power_freq_up@DPDK_2.0 16.04
+ rte_power_freqs@DPDK_2.0 16.04
+ rte_power_get_capabilities@DPDK_18.08 18.08
+ rte_power_get_env@DPDK_2.0 16.04
+ rte_power_get_freq@DPDK_2.0 16.04
+ rte_power_guest_channel_send_msg@DPDK_17.11 17.11
+ rte_power_init@DPDK_2.0 16.04
+ rte_power_poll_stat_fetch@EXPERIMENTAL 18.11
+ rte_power_poll_stat_update@EXPERIMENTAL 18.11
+ rte_power_set_env@DPDK_2.0 16.04
+ rte_power_set_freq@DPDK_2.0 16.04
+ rte_power_turbo_status@DPDK_17.11 17.11
+ rte_power_unset_env@DPDK_2.0 16.04
diff --git a/debian/librte-rawdev18.11.symbols b/debian/librte-rawdev18.11.symbols
new file mode 100644 (file)
index 0000000..b533bc7
--- /dev/null
@@ -0,0 +1,60 @@
+librte_rawdev.so.18.11 librte-rawdev18.11 #MINVER#
+ DPDK_18.08@DPDK_18.08 18.08
+#MISSING: 18.08# EXPERIMENTAL@EXPERIMENTAL 18.02
+ rte_rawdev_close@DPDK_18.08 18.08
+#MISSING: 18.08# rte_rawdev_close@EXPERIMENTAL 18.02
+ rte_rawdev_configure@DPDK_18.08 18.08
+#MISSING: 18.08# rte_rawdev_configure@EXPERIMENTAL 18.02
+ rte_rawdev_count@DPDK_18.08 18.08
+#MISSING: 18.08# rte_rawdev_count@EXPERIMENTAL 18.02
+ rte_rawdev_dequeue_buffers@DPDK_18.08 18.08
+#MISSING: 18.08# rte_rawdev_dequeue_buffers@EXPERIMENTAL 18.02
+ rte_rawdev_enqueue_buffers@DPDK_18.08 18.08
+#MISSING: 18.08# rte_rawdev_enqueue_buffers@EXPERIMENTAL 18.02
+ rte_rawdev_firmware_load@DPDK_18.08 18.08
+#MISSING: 18.08# rte_rawdev_firmware_load@EXPERIMENTAL 18.02
+ rte_rawdev_firmware_status_get@DPDK_18.08 18.08
+#MISSING: 18.08# rte_rawdev_firmware_status_get@EXPERIMENTAL 18.02
+ rte_rawdev_firmware_unload@DPDK_18.08 18.08
+#MISSING: 18.08# rte_rawdev_firmware_unload@EXPERIMENTAL 18.02
+ rte_rawdev_firmware_version_get@DPDK_18.08 18.08
+#MISSING: 18.08# rte_rawdev_firmware_version_get@EXPERIMENTAL 18.02
+ rte_rawdev_get_attr@DPDK_18.08 18.08
+#MISSING: 18.08# rte_rawdev_get_attr@EXPERIMENTAL 18.02
+ rte_rawdev_get_dev_id@DPDK_18.08 18.08
+#MISSING: 18.08# rte_rawdev_get_dev_id@EXPERIMENTAL 18.02
+ rte_rawdev_info_get@DPDK_18.08 18.08
+#MISSING: 18.08# rte_rawdev_info_get@EXPERIMENTAL 18.02
+ rte_rawdev_pmd_allocate@DPDK_18.08 18.08
+#MISSING: 18.08# rte_rawdev_pmd_allocate@EXPERIMENTAL 18.02
+ rte_rawdev_pmd_release@DPDK_18.08 18.08
+#MISSING: 18.08# rte_rawdev_pmd_release@EXPERIMENTAL 18.02
+ rte_rawdev_queue_conf_get@DPDK_18.08 18.08
+#MISSING: 18.08# rte_rawdev_queue_conf_get@EXPERIMENTAL 18.02
+ rte_rawdev_queue_count@DPDK_18.08 18.08
+ rte_rawdev_queue_release@DPDK_18.08 18.08
+#MISSING: 18.08# rte_rawdev_queue_release@EXPERIMENTAL 18.02
+ rte_rawdev_queue_setup@DPDK_18.08 18.08
+#MISSING: 18.08# rte_rawdev_queue_setup@EXPERIMENTAL 18.02
+ rte_rawdev_reset@DPDK_18.08 18.08
+#MISSING: 18.08# rte_rawdev_reset@EXPERIMENTAL 18.02
+ rte_rawdev_selftest@DPDK_18.08 18.08
+#MISSING: 18.08# rte_rawdev_selftest@EXPERIMENTAL 18.02
+ rte_rawdev_set_attr@DPDK_18.08 18.08
+#MISSING: 18.08# rte_rawdev_set_attr@EXPERIMENTAL 18.02
+ rte_rawdev_socket_id@DPDK_18.08 18.08
+#MISSING: 18.08# rte_rawdev_socket_id@EXPERIMENTAL 18.02
+ rte_rawdev_start@DPDK_18.08 18.08
+#MISSING: 18.08# rte_rawdev_start@EXPERIMENTAL 18.02
+ rte_rawdev_stop@DPDK_18.08 18.08
+#MISSING: 18.08# rte_rawdev_stop@EXPERIMENTAL 18.02
+ rte_rawdev_xstats_by_name_get@DPDK_18.08 18.08
+#MISSING: 18.08# rte_rawdev_xstats_by_name_get@EXPERIMENTAL 18.02
+ rte_rawdev_xstats_get@DPDK_18.08 18.08
+#MISSING: 18.08# rte_rawdev_xstats_get@EXPERIMENTAL 18.02
+ rte_rawdev_xstats_names_get@DPDK_18.08 18.08
+#MISSING: 18.08# rte_rawdev_xstats_names_get@EXPERIMENTAL 18.02
+ rte_rawdev_xstats_reset@DPDK_18.08 18.08
+#MISSING: 18.08# rte_rawdev_xstats_reset@EXPERIMENTAL 18.02
+ rte_rawdevs@DPDK_18.08 18.08
+#MISSING: 18.08# rte_rawdevs@EXPERIMENTAL 18.02
diff --git a/debian/librte-reorder18.11.symbols b/debian/librte-reorder18.11.symbols
new file mode 100644 (file)
index 0000000..918811d
--- /dev/null
@@ -0,0 +1,9 @@
+librte_reorder.so.18.11 librte-reorder18.11 #MINVER#
+ DPDK_2.0@DPDK_2.0 16.04
+ rte_reorder_create@DPDK_2.0 16.04
+ rte_reorder_drain@DPDK_2.0 16.04
+ rte_reorder_find_existing@DPDK_2.0 16.04
+ rte_reorder_free@DPDK_2.0 16.04
+ rte_reorder_init@DPDK_2.0 16.04
+ rte_reorder_insert@DPDK_2.0 16.04
+ rte_reorder_reset@DPDK_2.0 16.04
diff --git a/debian/librte-ring18.11.symbols b/debian/librte-ring18.11.symbols
new file mode 100644 (file)
index 0000000..8687495
--- /dev/null
@@ -0,0 +1,10 @@
+librte_ring.so.18.11 librte-ring18.11 #MINVER#
+ DPDK_2.0@DPDK_2.0 16.04
+ DPDK_2.2@DPDK_2.2 16.04
+ rte_ring_create@DPDK_2.0 16.04
+ rte_ring_dump@DPDK_2.0 16.04
+ rte_ring_free@DPDK_2.2 16.04
+ rte_ring_get_memsize@DPDK_2.0 16.04
+ rte_ring_init@DPDK_2.0 16.04
+ rte_ring_list_dump@DPDK_2.0 16.04
+ rte_ring_lookup@DPDK_2.0 16.04
diff --git a/debian/librte-sched18.11.symbols b/debian/librte-sched18.11.symbols
new file mode 100644 (file)
index 0000000..1aef307
--- /dev/null
@@ -0,0 +1,24 @@
+librte_sched.so.18.11 librte-sched18.11 #MINVER#
+ DPDK_2.0@DPDK_2.0 16.04
+ DPDK_2.1@DPDK_2.1 16.04
+ EXPERIMENTAL@EXPERIMENTAL 18.05
+ rte_approx@DPDK_2.0 16.04
+ rte_red_config_init@DPDK_2.0 16.04
+ rte_red_log2_1_minus_Wq@DPDK_2.0 16.04
+ rte_red_pow2_frac_inv@DPDK_2.0 16.04
+ rte_red_rand_seed@DPDK_2.0 16.04
+ rte_red_rand_val@DPDK_2.0 16.04
+ rte_red_rt_data_init@DPDK_2.0 16.04
+ rte_sched_pipe_config@DPDK_2.0 16.04
+ rte_sched_port_config@DPDK_2.0 16.04
+ rte_sched_port_dequeue@DPDK_2.0 16.04
+ rte_sched_port_enqueue@DPDK_2.0 16.04
+ rte_sched_port_free@DPDK_2.0 16.04
+ rte_sched_port_get_memory_footprint@DPDK_2.0 16.04
+ rte_sched_port_pipe_profile_add@EXPERIMENTAL 18.05
+ rte_sched_port_pkt_read_color@DPDK_2.1 16.04
+ rte_sched_port_pkt_read_tree_path@DPDK_2.1 16.04
+ rte_sched_port_pkt_write@DPDK_2.1 16.04
+ rte_sched_queue_read_stats@DPDK_2.0 16.04
+ rte_sched_subport_config@DPDK_2.0 16.04
+ rte_sched_subport_read_stats@DPDK_2.0 16.04
diff --git a/debian/librte-security18.11.symbols b/debian/librte-security18.11.symbols
new file mode 100644 (file)
index 0000000..445cd6b
--- /dev/null
@@ -0,0 +1,11 @@
+librte_security.so.18.11 librte-security18.11 #MINVER#
+ EXPERIMENTAL@EXPERIMENTAL 17.11
+ rte_security_capabilities_get@EXPERIMENTAL 17.11
+ rte_security_capability_get@EXPERIMENTAL 17.11
+ rte_security_get_userdata@EXPERIMENTAL 18.02
+ rte_security_session_create@EXPERIMENTAL 17.11
+ rte_security_session_destroy@EXPERIMENTAL 17.11
+ rte_security_session_get_size@EXPERIMENTAL 18.02
+ rte_security_session_stats_get@EXPERIMENTAL 17.11
+ rte_security_session_update@EXPERIMENTAL 17.11
+ rte_security_set_pkt_metadata@EXPERIMENTAL 17.11
diff --git a/debian/librte-table18.11.symbols b/debian/librte-table18.11.symbols
new file mode 100644 (file)
index 0000000..734c18d
--- /dev/null
@@ -0,0 +1,16 @@
+librte_table.so.18.11 librte-table18.11 #MINVER#
+ DPDK_17.11@DPDK_17.11 17.11
+ rte_table_acl_ops@DPDK_17.11 17.11
+ rte_table_array_ops@DPDK_17.11 17.11
+ rte_table_hash_cuckoo_ops@DPDK_17.11 17.11
+ rte_table_hash_ext_ops@DPDK_17.11 17.11
+ rte_table_hash_key16_ext_ops@DPDK_17.11 17.11
+ rte_table_hash_key16_lru_ops@DPDK_17.11 17.11
+ rte_table_hash_key32_ext_ops@DPDK_17.11 17.11
+ rte_table_hash_key32_lru_ops@DPDK_17.11 17.11
+ rte_table_hash_key8_ext_ops@DPDK_17.11 17.11
+ rte_table_hash_key8_lru_ops@DPDK_17.11 17.11
+ rte_table_hash_lru_ops@DPDK_17.11 17.11
+ rte_table_lpm_ipv6_ops@DPDK_17.11 17.11
+ rte_table_lpm_ops@DPDK_17.11 17.11
+ rte_table_stub_ops@DPDK_17.11 17.11
diff --git a/debian/librte-telemetry18.11.symbols b/debian/librte-telemetry18.11.symbols
new file mode 100644 (file)
index 0000000..9855385
--- /dev/null
@@ -0,0 +1,6 @@
+librte_telemetry.so.18.11 librte-telemetry18.11 #MINVER#
+ EXPERIMENTAL@EXPERIMENTAL 18.11
+ rte_telemetry_cleanup@EXPERIMENTAL 18.11
+ rte_telemetry_init@EXPERIMENTAL 18.11
+ rte_telemetry_parse@EXPERIMENTAL 18.11
+ rte_telemetry_selftest@EXPERIMENTAL 18.11
diff --git a/debian/librte-timer18.11.symbols b/debian/librte-timer18.11.symbols
new file mode 100644 (file)
index 0000000..c26b4f7
--- /dev/null
@@ -0,0 +1,11 @@
+librte_timer.so.18.11 librte-timer18.11 #MINVER#
+ DPDK_2.0@DPDK_2.0 16.04
+ rte_timer_dump_stats@DPDK_2.0 16.04
+ rte_timer_init@DPDK_2.0 16.04
+ rte_timer_manage@DPDK_2.0 16.04
+ rte_timer_pending@DPDK_2.0 16.04
+ rte_timer_reset@DPDK_2.0 16.04
+ rte_timer_reset_sync@DPDK_2.0 16.04
+ rte_timer_stop@DPDK_2.0 16.04
+ rte_timer_stop_sync@DPDK_2.0 16.04
+ rte_timer_subsystem_init@DPDK_2.0 16.04
diff --git a/debian/librte-vhost18.11.symbols b/debian/librte-vhost18.11.symbols
new file mode 100644 (file)
index 0000000..0cd92e5
--- /dev/null
@@ -0,0 +1,51 @@
+librte_vhost.so.18.11 librte-vhost18.11 #MINVER#
+ DPDK_16.07@DPDK_16.07 16.07~rc1
+ DPDK_17.05@DPDK_17.05 17.05
+ DPDK_17.08@DPDK_17.08 17.08
+ DPDK_18.02@DPDK_18.02 18.02
+ DPDK_2.0@DPDK_2.0 16.07~rc1
+ DPDK_2.1@DPDK_2.1 16.07~rc1
+ EXPERIMENTAL@EXPERIMENTAL 18.05
+ rte_vdpa_find_device_id@EXPERIMENTAL 18.05
+ rte_vdpa_get_device@EXPERIMENTAL 18.05
+ rte_vdpa_get_device_num@EXPERIMENTAL 18.11
+ rte_vdpa_register_device@EXPERIMENTAL 18.05
+ rte_vdpa_unregister_device@EXPERIMENTAL 18.05
+ rte_vhost_avail_entries@DPDK_16.07 16.07~rc1
+ rte_vhost_crypto_create@EXPERIMENTAL 18.05
+ rte_vhost_crypto_fetch_requests@EXPERIMENTAL 18.05
+ rte_vhost_crypto_finalize_requests@EXPERIMENTAL 18.05
+ rte_vhost_crypto_free@EXPERIMENTAL 18.05
+ rte_vhost_crypto_set_zero_copy@EXPERIMENTAL 18.05
+ rte_vhost_dequeue_burst@DPDK_2.0 16.07~rc1
+ rte_vhost_driver_attach_vdpa_device@EXPERIMENTAL 18.05
+ rte_vhost_driver_callback_register@DPDK_2.0 16.07~rc1
+ rte_vhost_driver_detach_vdpa_device@EXPERIMENTAL 18.05
+ rte_vhost_driver_disable_features@DPDK_17.05 17.05
+ rte_vhost_driver_enable_features@DPDK_17.05 17.05
+ rte_vhost_driver_get_features@DPDK_17.05 17.05
+ rte_vhost_driver_get_protocol_features@EXPERIMENTAL 18.05
+ rte_vhost_driver_get_queue_num@EXPERIMENTAL 18.05
+ rte_vhost_driver_get_vdpa_device_id@EXPERIMENTAL 18.05
+ rte_vhost_driver_register@DPDK_2.0 16.07~rc1
+ rte_vhost_driver_set_features@DPDK_17.05 17.05
+ rte_vhost_driver_start@DPDK_17.05 17.05
+ rte_vhost_driver_unregister@DPDK_2.1 16.07~rc1
+ rte_vhost_enable_guest_notification@DPDK_2.0 16.07~rc1
+ rte_vhost_enqueue_burst@DPDK_2.0 16.07~rc1
+ rte_vhost_get_ifname@DPDK_16.07 16.07~rc1
+ rte_vhost_get_log_base@EXPERIMENTAL 18.05
+ rte_vhost_get_mem_table@DPDK_17.05 17.05
+ rte_vhost_get_mtu@DPDK_17.05 17.05
+ rte_vhost_get_negotiated_features@DPDK_17.05 17.05
+ rte_vhost_get_numa_node@DPDK_16.07 16.07~rc1
+ rte_vhost_get_queue_num@DPDK_16.07 16.07~rc1
+ rte_vhost_get_vdpa_device_id@EXPERIMENTAL 18.05
+ rte_vhost_get_vhost_vring@DPDK_17.05 17.05
+ rte_vhost_get_vring_base@EXPERIMENTAL 18.05
+ rte_vhost_get_vring_num@DPDK_17.05 17.05
+ rte_vhost_log_used_vring@DPDK_17.05 17.05
+ rte_vhost_log_write@DPDK_17.05 17.05
+ rte_vhost_rx_queue_count@DPDK_17.08 17.08
+ rte_vhost_set_vring_base@EXPERIMENTAL 18.05
+ rte_vhost_vring_call@DPDK_18.02 18.02
diff --git a/debian/not-installed b/debian/not-installed
new file mode 100644 (file)
index 0000000..6e44687
--- /dev/null
@@ -0,0 +1,2 @@
+# meson installs this whether or not docs are built
+usr/share/doc/dpdk/guides/_static/css/custom.css
diff --git a/debian/patches/fix-build-arch-defaults.patch b/debian/patches/fix-build-arch-defaults.patch
new file mode 100644 (file)
index 0000000..e215b2a
--- /dev/null
@@ -0,0 +1,39 @@
+Description: Fix build and optimization issues
+ it is an upstream decision to select the minimum
+ baseline, also ppc can never use -march
+Forwarded: no (planned if it works well)
+Author: Christian Ehrhardt <christian.ehrhardt@canonical.com>
+Last-Update: 2018-11-14
+--- a/config/meson.build
++++ b/config/meson.build
+@@ -7,10 +7,28 @@ if meson.is_cross_build()
+ else
+       machine = get_option('machine')
+ endif
++
++# machine type 'base' defaults to the per arch agreed common minimal baseline
++# That might not be the most optimized, but the most portable version while
++# still being able to support the cpu features required for DPDK.
++# This can be bumped, but it can never be an invariant like 'native'
++if machine == 'base'
++      if host_machine.cpu_family().startswith('x86')
++              # matches the old build systems default
++              machine = 'corei7'
++      elif host_machine.cpu_family().startswith('arm') or host_machine.cpu_family().startswith('aarch')
++              # arm manages defaults in config/arm/meson.build
++              machine = 'default'
++      elif host_machine.cpu_family().startswith('ppc')
++              machine = 'power8'
++    endif
++endif
++
+ dpdk_conf.set('RTE_MACHINE', machine)
+ machine_args = []
+-# ppc64 does not support -march=native
+-if host_machine.cpu_family().startswith('ppc') and machine == 'native'
++
++# ppc64 does not support -march= at all, use -mcpu and -mtune for that
++if host_machine.cpu_family().startswith('ppc')
+       machine_args += '-mcpu=' + machine
+       machine_args += '-mtune=' + machine
+ else
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644 (file)
index 0000000..cdcf78a
--- /dev/null
@@ -0,0 +1 @@
+fix-build-arch-defaults.patch
diff --git a/debian/prep-modules b/debian/prep-modules
new file mode 100755 (executable)
index 0000000..0caf81e
--- /dev/null
@@ -0,0 +1,123 @@
+#! /bin/sh
+#
+# Copyright (c)  2009-2016 Andreas Beckmann <anbe@debian.org>
+#                2010-2016 Russ Allbery <rra@debian.org>
+#
+# This program 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 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 script.  If not, see <http://www.gnu.org/licenses/>.
+#
+# This script originally comes from:
+# https://anonscm.debian.org/viewvc/pkg-nvidia/packages/nvidia-graphics-drivers/trunk/debian/module/debian/prep-modules?view=markup
+# The original copyright and license (GPL2+) can be found at:
+# https://anonscm.debian.org/viewvc/pkg-nvidia/packages/nvidia-graphics-drivers/trunk/debian/copyright?view=markup
+#
+# Prepares to build kernel modules.  This script figures out and munges
+# version strings.  The goal is:
+#
+#  * Set the package name to dpdk-modules-$(KVERS) where $(KVERS) is the
+#    major kernel revision plus the debian subrevision and whatever
+#    architecture string is appropriate if building against the stock Debian
+#    kernels.  $(KVERS) should be identical to the version component contained
+#    in the Debian kernel package names (in other words, the ABI version, not
+#    the package version).
+#
+#  * Make the package depend on linux-image-$(KVERS) (= version) as appropriate
+#    for the kernel version that we're building against.  Use depend as the
+#    kernel ABI is not stable and it's not guaranteed that a module built
+#    against a version of the headers will work under a different kernel.
+#
+#  * Save the version number of the binary package in debian/VERSION for later
+#    use by dh_gencontrol.  This will be the version number of the source
+#    package followed by a + and the version number of the kernel package that
+#    we're building against.  If the kernel package version contains an epoch,
+#    try to hack our way into doing the right thing by using that epoch number
+#    as our own.  This isn't quite the right thing, but seems reasonably good.
+#
+# This script generates debian/control from debian/control.template using sed.
+# Unfortunately, substvars cannot be used since the name of the package is
+# modified and substvars happens too late.  It also outputs debian/VERSION,
+# containing the version of the binary package.
+
+set -e
+
+if [ "$#" -ne 1 ]; then
+    echo "Usage: $0 <kernel-source-location>"
+    exit 1
+fi
+
+# We can get the kernel version from one of three places.  If KVERS and KDREV
+# are both already set in the environment (which will be the case when invoked
+# by make-kpkg or module-assistant), use them.  Otherwise, if we have a kernel
+# source directory that contains debian/changelog (generated by make-kpkg),
+# parse that file to find the version information.  Finally, if neither works,
+# extract the kernel version from the kernel headers, append INT_SUBARCH to
+# that version if it's available, and assume a kernel package revision of -1
+# if none is provided.
+#
+# Set the variables $dpdk_kvers, which will hold the revision of the kernel,
+# and $dpdk_kdrev, which will hold the version of the kernel package that
+# we're building against.
+
+changelog="$1/debian/changelog"
+if [ -n "$KVERS" ] && [ -n "$KDREV" ]; then
+    dpdk_kvers="${KVERS}${INT_SUBARCH}"
+    dpdk_kdrev="${KDREV}"
+elif [ ! -f "$changelog" ] ; then
+    if [ -n "$KVERS" ] ; then
+        dpdk_kvers="$KVERS"
+    else
+        dpdk_kvers=`perl debian/kernel-version "$1"`
+    fi
+    if [ -z "$KDREV" ] ; then
+        set +e
+        dpdk_kdrev=`dpkg-query -W -f='${Version}\n' linux-headers-${dpdk_kvers} 2> /dev/null`
+        if [ $? -ne 0 ] ; then
+            dpdk_kdrev="${dpdk_kvers}-1"
+        fi
+        set -e
+    else
+        dpdk_kvers="${dpdk_kvers}${INT_SUBARCH}"
+        dpdk_kdrev="${KDREV}"
+    fi
+else
+    if [ -n "$KVERS" ] ; then
+        dpdk_kvers="$KVERS"
+    else
+        dpdk_kvers=`head -1 "$changelog" \
+            | sed -e 's/.*source-\([^ ]*\) (\([^)]*\)).*/\1/'`
+    fi
+    dpdk_kdrev=`head -1 "$changelog" \
+        | sed -e 's/.*source-\([^ ]*\) (\([^)]*\)).*/\2/'`
+fi
+
+# Sanitize.
+dpdk_kvers="$(echo "$dpdk_kvers" | tr _ -)"
+dpdk_kdrev="$(echo "$dpdk_kdrev" | tr _ -)"
+
+# Generate the control file from the template.
+
+sed -e "s/#KVERS#/${dpdk_kvers}/g" -e "s/#KDREV#/(= ${dpdk_kdrev})/g" debian/control.modules.in > debian/control.modules
+
+# Now, calcuate the binary package version.  Extract the epoch from the kernel
+# package revision and add it to the beginning of the binary package version
+# if present.  Then, concatenate the source version, '+', and the kernel
+# package revision without the epoch.
+
+dpdk_version=`head -1 debian/changelog | sed -e 's/.*(\([^)]*\)).*/\1/'`
+dpdk_epoch=`echo ${dpdk_kdrev} | sed -n -e 's/^\([0-9]*\):.*/\1/p'`
+dpdk_version="${dpdk_version}+`echo ${dpdk_kdrev} | sed 's/^[0-9]*://'`"
+if [ -n "$dpdk_epoch" ] ; then
+    dpdk_version="${dpdk_epoch}:${dpdk_version}"
+fi
+
+echo "$dpdk_version" > debian/VERSION
diff --git a/debian/rules b/debian/rules
new file mode 100755 (executable)
index 0000000..59c620c
--- /dev/null
@@ -0,0 +1,184 @@
+#!/usr/bin/make -f
+
+# see EXAMPLES in dpkg-buildflags(1) and read /usr/share/dpkg/*
+DPKG_EXPORT_BUILDFLAGS = 1
+export DEB_BUILD_MAINT_OPTIONS = hardening=+all
+include /usr/share/dpkg/default.mk
+
+DPDK_ABI := $(shell echo $(DEB_VERSION_UPSTREAM) | cut -d '-' -f1 | cut -d '.'  -f1-2 | cut -d '~' -f1)
+
+ifeq (,$(findstring terse,$(DEB_BUILD_OPTIONS)))
+       export DH_VERBOSE=1
+       export DH_OPTIONS=-v
+endif
+
+# People rebuilding this package can overwrite RTE_MACHINE
+# via DEB_BUILD_OPTIONS if they like
+ifneq (,$(filter rte_machine=%,$(DEB_BUILD_OPTIONS)))
+    RTE_MACHINE ?= $(patsubst rte_machine=%,%,$(filter rte_machine=%,$(DEB_BUILD_OPTIONS)))
+endif
+
+# Use default for arm* where there is a defined list.
+# x86 and power would just use "native", which is an invariant, so set
+# power8 and corei7 to keep it stable.
+ifneq (,$(filter $(DEB_HOST_ARCH), arm64))
+RTE_MACHINE ?= "default"
+else
+ifneq (,$(filter $(DEB_HOST_ARCH), armhf))
+RTE_MACHINE ?= "armv7a"
+else
+ifneq (,$(filter $(DEB_HOST_ARCH), ppc64el))
+RTE_MACHINE ?= "power8"
+else
+RTE_MACHINE ?= "corei7"
+endif
+endif
+endif
+
+# now stable with parallel comilation, so support -j
+ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
+    PAR := $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
+    MAKEFLAGS += -j$(PAR)
+endif
+
+ifneq (,$(findstring nodoc,$(DEB_BUILD_PROFILES)))
+BUILD_DOCS=n
+else
+ifneq (,$(findstring nodoc,$(DEB_BUILD_OPTIONS)))
+BUILD_DOCS=n
+# to stop dh_installdoc from running
+export DEB_BUILD_PROFILES += nodoc
+else
+BUILD_DOCS=y
+endif
+endif
+
+# kernel_modules can be passed via DEB_BUILD_OPTIONS to enable building the
+# optional binary kernel modules package. By default it will be built against
+# the current kernel, or ksrc can be passed with a path to the target kernel
+# sources instead.
+ifeq (,$(findstring kernel_modules,$(DEB_BUILD_OPTIONS)))
+DPDK_CONFIG_BUILD_KMOD=false
+KSRC=""
+else
+ifneq (,$(filter ksrc=%,$(DEB_BUILD_OPTIONS)))
+    KSRC := $(patsubst ksrc=%,%,$(filter ksrc=%,$(DEB_BUILD_OPTIONS)))
+else
+    KSRC := /lib/modules/$(shell uname -r)/build
+endif
+
+KVERS := $(shell perl debian/kernel-version $(KSRC))
+export KVERS
+export MODULE_CFLAGS=-fno-PIE
+
+DPDK_CONFIG_BUILD_KMOD=true
+
+# Since the binary module package is generated at build time depending on the
+# local kernel version, we have to append the new package in d/control.
+# We cannot use a separate control file since that wouldn't work with
+# dpkg-genchanges, and also would require a lot of overrides for debhelpers.
+get_built_using        ?= $(filter-out (=),$(shell dpkg-query -f='$${source:Package} (=$${source:Version})' -W $1))
+
+build:
+       @if [ x"$(KVERS)" = x ] ; then \
+           echo 'No version in $(KSRC)/include/linux/version.h' >&2; \
+           exit 1; \
+       fi
+       sh debian/prep-modules $(KSRC)
+       cat debian/control.modules >> debian/control
+       dh $@ --with python3,dkms,systemd --buildsystem=meson
+endif
+
+%:
+       dh $@ --with python3,dkms,systemd --buildsystem=meson
+
+override_dh_gencontrol:
+       dh_gencontrol
+       # debian/files will not exist until dh_gencontrol has ran at least once,
+       # so we need to run gencontrol for libdpdk-dev after.
+       # The list of libraries and PMDs is everchanging, so generate the dependency
+       # list for libdpdk-dev to avoid having to maintain it manually.
+       # Same for the recommends list for dpdk, were we want the PMDs and the mempools.
+       dh_gencontrol -p libdpdk-dev -- -V"librte:Depends=`grep -E 'librte-*' ./debian/files | grep -v dbgsym | tr '_' ' ' | awk '{ print $$1,"(=",$$2 ")" }' | paste -sd ',' - | sed -e 's/,/, /g'`"
+       dh_gencontrol -p dpdk -- -V"librte:Recommends=`grep -E 'librte-(pmd|mempool).*' ./debian/files | grep -v dbgsym | tr '_' ' ' | awk '{ print $$1,"(=",$$2 ")" }' | paste -sd ',' - | sed -e 's/,/, /g'`"
+ifneq (,$(findstring kernel_modules,$(DEB_BUILD_OPTIONS)))
+       dh_gencontrol -p dpdk-modules-$(KVERS) -- \
+               -v`cat debian/VERSION` \
+               -V'built:using:kernel=$(call get_built_using,linux-headers-$(KVERS))'
+endif
+
+override_dh_auto_clean:
+       rm -rf debian/build debian/tmp debian/dpdk-modules-* \
+               debian/control.modules debian/VERSION
+       sed -i '/Package: dpdk-modules-/,/`tail -n1 debian/control.modules.in`/d' debian/control
+       rm -f debian/dpdk-igb-uio-dkms.dkms debian/dpdk-rte-kni-dkms.dkms
+       dh_auto_clean
+
+override_dh_auto_configure:
+       dh_auto_configure -- \
+               --includedir=include/dpdk \
+               -Dper_library_versions=false \
+               -Dinclude_subdir_arch=../$(DEB_HOST_MULTIARCH)/dpdk \
+               -Dmachine=$(RTE_MACHINE) \
+               -Dkernel_dir=$(KSRC) \
+               -Denable_kmods=$(DPDK_CONFIG_BUILD_KMOD)
+
+override_dh_auto_build-indep:
+ifeq (y,$(BUILD_DOCS))
+       dh_auto_build -- doc
+       # NINJA DOC INSTALL DOES NOT WORK - .buildinfo present, css missing
+       rm -f obj-$(DEB_HOST_MULTIARCH)/doc/guides/guides/.buildinfo
+endif
+
+# ninja install doc does not work, will rebuild everything,
+# only dpdk-doc as arch: all so just skip it
+override_dh_auto_install-indep:
+
+override_dh_auto_install-arch:
+       dh_auto_install
+       # have the DKMS build include the correct per-arch directory
+       sed "s/@@DEB_HOST_MULTIARCH@@/$(DEB_HOST_MULTIARCH)/g" debian/dpdk-igb-uio-dkms.dkms.in > debian/dpdk-igb-uio-dkms.dkms
+       sed "s/@@DEB_HOST_MULTIARCH@@/$(DEB_HOST_MULTIARCH)/g" debian/dpdk-rte-kni-dkms.dkms.in > debian/dpdk-rte-kni-dkms.dkms
+       # Package(s): libdpdk-<NAME><VER> (bare runtime libs and PMDs)
+       for lib in $$(ls -1 debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/*.so.*); do \
+         LN=$$(basename $${lib} | sed -e 's/\.so\.[0-9\.]*$$//' | tr '_' '-'); \
+         if echo $${LN} | grep -q ".*[0-9]$$"; then \
+           PKG=$${LN}-$(DPDK_ABI); \
+         else \
+           PKG=$${LN}$(DPDK_ABI); \
+         fi; \
+         LIBF="$$(basename $${lib})"; \
+         dh_install -p $${PKG} usr/lib/$(DEB_HOST_MULTIARCH)/$${LIBF}; \
+         if [ -f debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/*/*/$${LIBF} ]; then \
+           dh_install -p $${PKG} usr/lib/$(DEB_HOST_MULTIARCH)/*/*/$${LIBF}; \
+         fi; \
+       done
+       # Package: dpdk-igb-uio-dkms
+       dh_install -p dpdk-igb-uio-dkms kernel/linux/igb_uio/* \
+               usr/src/dpdk-igb-uio-$(DEB_VERSION_UPSTREAM)
+       # Package: dpdk-rte-kni-dkms
+       dh_install -p dpdk-rte-kni-dkms kernel/linux/kni/* \
+               usr/src/dpdk-rte-kni-$(DEB_VERSION_UPSTREAM)
+ifneq (,$(KVERS))
+       # Package: dpdk-modules-<kernel version>
+       dh_install -p dpdk-modules-$(KVERS) lib/modules
+endif
+
+override_dh_dkms:
+       dh_dkms -V $(DEB_VERSION_UPSTREAM)
+
+override_dh_installinit:
+       dh_installinit --no-start --no-stop-on-upgrade
+
+override_dh_systemd_start:
+       dh_systemd_start --no-start --no-stop-on-upgrade
+
+override_dh_auto_test:
+
+override_dh_python3:
+       # dh_python only looks in /usr/share/package_name but dpdk-doc installs in
+       # /usr/share/dpdk, so pass /usr to catch all
+       dh_python3 --shebang=/usr/bin/python3 /usr
+
+override_dh_missing:
+       dh_missing --fail-missing
diff --git a/debian/source/format b/debian/source/format
new file mode 100644 (file)
index 0000000..163aaf8
--- /dev/null
@@ -0,0 +1 @@
+3.0 (quilt)
diff --git a/debian/source/options b/debian/source/options
new file mode 100644 (file)
index 0000000..23fcc11
--- /dev/null
@@ -0,0 +1 @@
+extend-diff-ignore = '(^|/)(\.gitreview|\.git|maven_env.txt)$'
diff --git a/debian/tests/check-dpdk-supported-arch.sh b/debian/tests/check-dpdk-supported-arch.sh
new file mode 100644 (file)
index 0000000..1105dc2
--- /dev/null
@@ -0,0 +1,12 @@
+#!/bin/bash
+
+arch=$(dpkg --print-architecture)
+case $arch in
+    amd64|arm64|i386|ppc64el)
+        echo "Architecture ${arch} supported, go on with test"
+        ;;
+    *)
+        echo "Architecture ${arch} not supported, SKIP test"
+        exit 0
+        ;;
+esac
diff --git a/debian/tests/control b/debian/tests/control
new file mode 100644 (file)
index 0000000..3b85c00
--- /dev/null
@@ -0,0 +1,17 @@
+Tests: test-initscripts
+Restrictions: allow-stderr, isolation-machine, needs-root
+Depends: dpdk [amd64 arm64 i386 ppc64el], gawk, mount, systemd, sysvinit-utils, iproute2
+
+Tests: test-linkage
+Restrictions: allow-stderr
+Depends: libdpdk-dev [amd64 arm64 i386 ppc64el], libc6, libc6-dev, gcc,
+ grep, libpcap-dev, libxenstore3.0 [amd64 arm64 i386], pax-utils, pkg-config
+
+Tests: test-dkms
+Restrictions: allow-stderr, isolation-machine, needs-root
+Depends: kmod, dpdk-igb-uio-dkms [amd64 arm64 i386 ppc64el],
+ dpdk-rte-kni-dkms [amd64 arm64 i386 ppc64el]
+
+Tests: test-autotest
+Restrictions: allow-stderr, isolation-machine, needs-root
+Depends: dpdk [amd64 arm64 i386 ppc64el], python, python-pexpect
diff --git a/debian/tests/test-autotest b/debian/tests/test-autotest
new file mode 100644 (file)
index 0000000..e5bee2c
--- /dev/null
@@ -0,0 +1,58 @@
+#!/bin/bash
+set -u
+
+basedir=$(dirname "$0")
+. "${basedir}"/check-dpdk-supported-arch.sh
+
+# since these tests really execute dpdk code they have to check for the
+# required minimum cpu features
+ARCH=$(dpkg --print-architecture)
+echo "Check required features on arch: ${ARCH}"
+case "${ARCH}" in
+    amd64)
+        if ! grep -q '^flags.*sse3' /proc/cpuinfo; then
+            echo "Missing sse3 on ${ARCH} - not supported, SKIP test"
+            exit 0
+        fi
+        ;;
+    *)
+        echo "DPDK autotest not supported on ${ARCH}, SKIP test"
+        exit 0
+        ;;
+esac
+echo "no known missing feature on ${ARCH}, continue test"
+
+echo "Get required 1G huge pages"
+echo 512 > /sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepages
+sleep 5s
+realhp=$(cat /sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepages)
+if [[ "$realhp" != "512" ]]; then
+    echo "Unable to allocate the huge pages required for the test, SKIP test"
+    exit 0
+fi
+
+# Reasons for not being an dh_autotest
+# - needs root and hugepages
+# - build environment capabilities too unpredictable
+# - certain workarounds needed to get running, needing root for some which is
+#   not available in the build environment
+
+# blacklist reasons:
+# known upstream: http://www.dpdk.org/ml/archives/dev/2016-May/038849.html
+# - KNI: we deliver via dkms but test doesn't match
+# - power_acpi_cpufreq: in many environments blocked by other cpufreq
+# - power_kvm_vm_autotest: no avail in all environments, only for virt power management e.g. /dev/virtio-ports/virtio.serial.port.poweragent.0
+# - IVSHMEM fails in virtual environment
+# - eal_flags needs at least 8 cpus for lcores test not to fail
+# - pci doesn't initialize in all virt env causing command not found issues
+# - rather slow performance tests not suited for regular build associated tests: ring_perf,mempool_perf,memcpy_perf,hash_perf,timer_perf
+
+python "/usr/share/dpdk/test/autotest.py" \
+    "/usr/bin/dpdk-test" \
+    "-KNI,power_acpi_cpufreq,power_kvm_vm,IVSHMEM,eal_flags,pci,ring_perf,mempool_perf,memcpy_perf,hash_perf,timer_perf" \
+
+# Pass/Fail
+# For now the autotest is too unreliable, so we run it to get some logs in
+# different environments, but never (want to) fail until it is stable.
+
+echo "OK"
diff --git a/debian/tests/test-dkms b/debian/tests/test-dkms
new file mode 100644 (file)
index 0000000..85abd63
--- /dev/null
@@ -0,0 +1,22 @@
+#!/bin/bash
+set -eu
+
+basedir=$(dirname "$0")
+. "${basedir}"/check-dpdk-supported-arch.sh
+
+if [ -d /var/lib/dkms ]; then
+    (cd /var/lib/dkms; find -name "make.log" -print0 | xargs -0 tar c) > "$ADT_ARTIFACTS/dkms-make-logs.tar"
+fi
+
+# check that the dkms build fine (on dep install), load and unload
+printf "\n\nChecking igb_uio\n"
+modinfo igb_uio
+modprobe igb_uio
+rmmod igb_uio
+echo "OK"
+
+printf "\n\nChecking rte_kni\n"
+modinfo rte_kni
+modprobe rte_kni
+rmmod rte_kni
+echo "OK"
diff --git a/debian/tests/test-initscripts b/debian/tests/test-initscripts
new file mode 100644 (file)
index 0000000..1643a2e
--- /dev/null
@@ -0,0 +1,149 @@
+#!/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
+EXPECT16MHP=2
+
+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-16384kB ]; 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}"
+        checkhp "hugepages-16384kB" "${EXPECT16MHP}"
+        # We do not check 1G/16M 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 || /bin/true
+    systemctl reset-failed dpdk.service || /bin/true
+
+    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" 3 "${PRE}" "${POST}" "active"
+    echo "### Restarting Service ###"
+    ${PRE} restart "${POST}"
+    checkstatus "${TYPE}-RESTART" 3 "${PRE}" "${POST}" "active"
+}
+
+echo "NR_2M_PAGES=$EXPECT2MHP" >> ${DPDK_CONF}
+echo "NR_1G_PAGES=$EXPECT1GHP" >> ${DPDK_CONF}
+echo "NR_16M_PAGES=$EXPECT16MHP" >> ${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"
diff --git a/debian/tests/test-linkage b/debian/tests/test-linkage
new file mode 100644 (file)
index 0000000..f47da74
--- /dev/null
@@ -0,0 +1,46 @@
+#!/bin/bash
+set -eux
+binary="testlinkage"
+
+basedir=$(dirname "$0")
+. "${basedir}"/check-dpdk-supported-arch.sh
+
+cat > testlinkage.c << EOF
+#include <stdio.h>
+#include <rte_common.h>
+
+int main(void)
+{
+        printf("Hello rte_exit %p\n", rte_exit);
+        return 0;
+}
+EOF
+
+# -ldpdk actually refers to a linker script now, not a real .so
+# with broken linkage this will fail with undefined symbols
+printf "\n\nChecking compile with link against DPDK\n"
+gcc testlinkage.c $(pkg-config --libs --cflags libdpdk) -o testlinkage
+echo "OK"
+
+printf "\n\nLinkage info\n"
+lddtree ${binary}
+
+printf "\n\nChecking for expected internal libraries\n"
+# a few of the sublibs that it should use
+lddtree ${binary} | grep '^    librte_eal.so'
+echo "OK"
+
+printf "\n\nChecking for expected feature dependent library dependencies\n"
+# features only used by the lib that we enabled
+ldd /usr/lib/*/librte_pmd_pcap.so | grep libpcap
+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)
+(./${binary} 2>&1 || /bin/true ) | \
+grep -E 'ERROR: This system does not support "SSSE3".|Hello rte_exit 0x'
+
+echo "OK"
diff --git a/debian/update-control.py b/debian/update-control.py
new file mode 100644 (file)
index 0000000..1f0d39a
--- /dev/null
@@ -0,0 +1,82 @@
+#! /usr/bin/env python
+#
+# based on https://anonscm.debian.org/viewvc/pkg-boost/boost/trunk/debian/update-control.py
+#
+
+import sys
+reload(sys)
+sys.setdefaultencoding('utf-8')
+
+from deb822 import Deb822
+import re
+
+gOldVersion = None
+gNewVersion = None
+
+class DpdkVersion:
+    def __init__(self, version):
+        (self.Major,self.Minor) = version.split('.')
+        self.PackageVersion = self.Major + '.' + self.Minor
+
+def replaceVersion(string, ver1, ver2):
+    '''Search 'string' for a DpdkVersion ver1.  If
+    SharedObjectVersion or PackageVersion of ver1 is found, replace by
+    corresponding ver2 version string.  Return the updated string.'''
+    string = re.sub(ver1.PackageVersion, ver2.PackageVersion, string)
+    return string
+
+def updateVersionedValue(paragraph, key):
+    if not paragraph.has_key(key): return
+    oldValue = paragraph[key]
+    paragraph[key] = replaceVersion(paragraph[key], gOldVersion, gNewVersion)
+    return (oldValue, paragraph[key])
+
+def conflictsWithPrevious(paragraph):
+    if not paragraph.has_key('Conflicts'): return False
+    nameRe = re.sub('\d', '\\d', paragraph['Package'])
+    return re.search(nameRe, paragraph['Conflicts']) is not None
+
+def updateConflicts(paragraph, oldPkgName):
+    newPkgName = paragraph['Package']
+    needsConflict = (newPkgName.endswith("-dev") and not newPkgName.endswith("-all-dev")) or conflictsWithPrevious(paragraph)
+    if not needsConflict: return
+    if paragraph.has_key('Conflicts'):
+        if paragraph['Conflicts'].find(oldPkgName) == -1:
+            paragraph['Conflicts'] += ', ' + oldPkgName
+    else:
+        paragraph['Conflicts'] = oldPkgName
+
+def processSourceParagraph(p):
+    updateVersionedValue(p, 'Source')
+
+def processPackageParagraph(p):
+    (oldPkgName, newPkgName) = updateVersionedValue(p, 'Package')
+    updateVersionedValue(p, 'Depends')
+    updateVersionedValue(p, 'Recommends')
+    updateVersionedValue(p, 'Suggests')
+    updateConflicts(p, oldPkgName)
+
+def printParagraph(p):
+    for key in p.keys():
+        print "%s: %s" % (key, p[key])
+
+def processControl():
+    firstParagraph = True
+    for paragraph in Deb822.iter_paragraphs(open('control')):
+        if firstParagraph:
+            processSourceParagraph(paragraph)
+            printParagraph(paragraph)
+            firstParagraph = False
+        else:
+            processPackageParagraph(paragraph)
+            print
+            printParagraph(paragraph)
+
+if len(sys.argv) < 3:
+    print "Usage: cd debian/; %s <old version> <new version> > control_new" % sys.argv[0]
+    exit(1)
+
+gOldVersion = DpdkVersion(sys.argv[1])
+gNewVersion = DpdkVersion(sys.argv[2])
+processControl()
+print
diff --git a/debian/update-helper-control.py b/debian/update-helper-control.py
new file mode 100755 (executable)
index 0000000..fe974ab
--- /dev/null
@@ -0,0 +1,97 @@
+#! /usr/bin/env python3
+#
+# based on https://anonscm.debian.org/viewvc/pkg-boost/boost/
+#    trunk/debian/update-control.py
+#
+
+import re
+import sys
+
+from deb822 import Deb822
+
+gOldVersion = None
+gNewVersion = None
+
+
+class DpdkVersion:
+    def __init__(self, version):
+        (self.Major, self.Minor) = version.split('.')
+        self.PackageVersion = self.Major + '.' + self.Minor
+
+
+def replaceVersion(string, ver1, ver2):
+    '''Search 'string' for a DpdkVersion ver1.  If
+    SharedObjectVersion or PackageVersion of ver1 is found, replace by
+    corresponding ver2 version string.  Return the updated string.'''
+    string = re.sub(ver1.PackageVersion, ver2.PackageVersion, string)
+    return string
+
+
+def updateVersionedValue(paragraph, key):
+    if key not in paragraph:
+        return
+    oldValue = paragraph[key]
+    paragraph[key] = replaceVersion(paragraph[key], gOldVersion, gNewVersion)
+    return (oldValue, paragraph[key])
+
+
+def conflictsWithPrevious(paragraph):
+    if 'Conflicts' not in paragraph:
+        return False
+    nameRe = re.sub('\d', '\\d', paragraph['Package'])
+    return re.search(nameRe, paragraph['Conflicts']) is not None
+
+
+def updateConflicts(paragraph, oldPkgName):
+    newPkgName = paragraph['Package']
+    needsConflict = ((newPkgName.endswith("-dev")
+                      and not newPkgName.endswith("-all-dev"))
+                     or conflictsWithPrevious(paragraph))
+    if not needsConflict:
+        return
+    if 'Conflicts' in paragraph:
+        if paragraph['Conflicts'].find(oldPkgName) == -1:
+            paragraph['Conflicts'] += ', ' + oldPkgName
+    else:
+        paragraph['Conflicts'] = oldPkgName
+
+
+def processSourceParagraph(p):
+    updateVersionedValue(p, 'Source')
+
+
+def processPackageParagraph(p):
+    (oldPkgName, newPkgName) = updateVersionedValue(p, 'Package')
+    updateVersionedValue(p, 'Depends')
+    updateVersionedValue(p, 'Recommends')
+    updateVersionedValue(p, 'Suggests')
+    updateConflicts(p, oldPkgName)
+
+
+def printParagraph(p):
+    for key in p.keys():
+        print("%s: %s" % (key, p[key]))
+
+
+def processControl():
+    firstParagraph = True
+    for paragraph in Deb822.iter_paragraphs(open('control')):
+        if firstParagraph:
+            processSourceParagraph(paragraph)
+            printParagraph(paragraph)
+            firstParagraph = False
+        else:
+            processPackageParagraph(paragraph)
+            print
+            printParagraph(paragraph)
+
+
+if len(sys.argv) < 3:
+    print("Usage: cd debian/; %s <old version> <new version>"
+          " > control_new" % sys.argv[0])
+    exit(1)
+
+gOldVersion = DpdkVersion(sys.argv[1])
+gNewVersion = DpdkVersion(sys.argv[2])
+processControl()
+print
diff --git a/debian/update-helper-symbols.sh b/debian/update-helper-symbols.sh
new file mode 100755 (executable)
index 0000000..1972ad3
--- /dev/null
@@ -0,0 +1,14 @@
+#!/bin/bash
+if [ "$#" -lt 2 ]; then
+    echo "Need at least two arguments"
+    echo "Usage: $0 <newversion> <symbol-files>..."
+fi
+
+newv=${1}
+
+for symbolf in ${@:2}
+do
+    echo "modifying ${symbolf}"
+    perl -pi -e "s/\.so\.[0-9.]*/.so.${newv}/g" "${symbolf}"
+    perl -pi -e "s/[0-9.]* #MINVER#/${newv} #MINVER#/g" "${symbolf}"
+done
diff --git a/debian/watch b/debian/watch
new file mode 100644 (file)
index 0000000..5de4f73
--- /dev/null
@@ -0,0 +1,2 @@
+version=3
+http://fast.dpdk.org/rel/dpdk-(.+)\.(?:zip|tgz|tbz|txz|(?:tar\.(?:gz|bz2|xz)))