From 85fc9b2542aa13bb0e3838458795c8aaccb77541 Mon Sep 17 00:00:00 2001 From: Thomas Monjalon Date: Tue, 30 Jul 2019 19:34:13 +0200 Subject: [PATCH] devtools: restore null test This small testpmd test was not working for a long time because of several changes in EAL and mempool. The 3 main issues solved are: - Make --no-huge working by specifying an amount of memory to allocate in legacy mode, and disabling mlockall. - Load a mempool handler in shared library case. - Support meson Signed-off-by: Thomas Monjalon --- devtools/test-null.sh | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/devtools/test-null.sh b/devtools/test-null.sh index 61879e3e61..73bbded893 100755 --- a/devtools/test-null.sh +++ b/devtools/test-null.sh @@ -1,17 +1,27 @@ #! /bin/sh -e # SPDX-License-Identifier: BSD-3-Clause # Copyright 2015 6WIND S.A. +# Copyright 2019 Mellanox Technologies, Ltd # Run a quick testpmd forwarding with null PMD without hugepage build=${1:-build} coremask=${2:-3} # default using cores 0 and 1 -if grep -q SHARED_LIB=y $build/.config; then - pmd='-d librte_pmd_null.so' +testpmd=$build/app/dpdk-testpmd +[ -f "$testpmd" ] || testpmd=$build/app/testpmd +if [ ! -f "$testpmd" ] ; then + echo 'ERROR: testpmd cannot be found' >&2 + exit 1 +fi + +if ldd $testpmd | grep -q librte_ ; then + libs='-d librte_mempool_ring.so -d librte_pmd_null.so' +else + libs= fi (sleep 1 && echo stop) | -$build/app/testpmd -c $coremask -n 1 --no-huge \ - $pmd --vdev net_null1 --vdev net_null2 -- \ - --total-num-mbufs=2048 -ia +$testpmd -c $coremask --no-huge -m 150 \ + $libs --vdev net_null1 --vdev net_null2 -- \ + --no-mlockall --total-num-mbufs=2048 -ia