summaryrefslogtreecommitdiff
path: root/.travis
diff options
context:
space:
mode:
authorIlya Maximets <i.maximets@ovn.org>2019-11-11 19:52:56 +0100
committerIan Stokes <ian.stokes@intel.com>2019-11-19 20:52:46 +0000
commit4ae8c4617fd34422ac7edabe4d63a78c6442dbd5 (patch)
tree46bbd2766ff403ef43164e7f846753d37655bb90 /.travis
parent52b5a5c0a313a10d4c9bc3eb5483d61c47edbc3d (diff)
downloadopenvswitch-4ae8c4617fd34422ac7edabe4d63a78c6442dbd5.tar.gz
dpdk: Deprecate pdump support.
The conventional way for packet dumping in OVS is to use ovs-tcpdump that works via traffic mirroring. DPDK pdump could probably be used for some lower level debugging, but it is not commonly used for various reasons. There are lots of limitations for using this functionality in practice. Most of them connected with running secondary pdump process and memory layout issues like requirement to disable ASLR in kernel. More details are available in DPDK guide: https://doc.dpdk.org/guides/prog_guide/multi_proc_support.html#multi-process-limitations Beside the functional limitations it's also hard to use this functionality correctly. User must be sure that OVS and pdump utility are running on different CPU cores, which is hard because non-PMD threads could float over available CPU cores. This or any other misconfiguration will likely lead to crash of the pdump utility or/and OVS. Another problem is that the user must actually have this special pdump utility in a system and it might be not available in distributions. This change disables pdump support by default introducing special configuration option '--enable-dpdk-pdump'. Deprecation warnings will be shown to users on configuration and in runtime. Claiming to completely remove this functionality from OVS in one of the next releases. Signed-off-by: Ilya Maximets <i.maximets@ovn.org> Acked-by: Aaron Conole <aconole@redhat.com> Acked-by: Flavio Leitner <fbl@sysclose.org> Acked-by: David Marchand <david.marchand@redhat.com> Signed-off-by: Ian Stokes <ian.stokes@intel.com>
Diffstat (limited to '.travis')
-rwxr-xr-x.travis/linux-build.sh4
1 files changed, 3 insertions, 1 deletions
diff --git a/.travis/linux-build.sh b/.travis/linux-build.sh
index 69260181b..4e74973a3 100755
--- a/.travis/linux-build.sh
+++ b/.travis/linux-build.sh
@@ -124,7 +124,7 @@ function install_dpdk()
sed -i '/CONFIG_RTE_EAL_IGB_UIO=y/s/=y/=n/' build/.config
sed -i '/CONFIG_RTE_KNI_KMOD=y/s/=y/=n/' build/.config
- # Enable pdump. This will enable building of the relevant OVS code.
+ # Enable pdump support in DPDK.
sed -i '/CONFIG_RTE_LIBRTE_PMD_PCAP=n/s/=n/=y/' build/.config
sed -i '/CONFIG_RTE_LIBRTE_PDUMP=n/s/=n/=y/' build/.config
@@ -168,6 +168,8 @@ if [ "$DPDK" ] || [ "$DPDK_SHARED" ]; then
DPDK_VER="18.11.2"
fi
install_dpdk $DPDK_VER
+ # Enable pdump support in OVS.
+ EXTRA_OPTS="${EXTRA_OPTS} --enable-dpdk-pdump"
if [ "$CC" = "clang" ]; then
# Disregard cast alignment errors until DPDK is fixed
CFLAGS_FOR_OVS="${CFLAGS_FOR_OVS} -Wno-cast-align"