On Wed, Jul 17, 2019 at 5:53 PM Thomas Monjalon <tho...@monjalon.net> wrote: > > 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 <tho...@monjalon.net> > --- > devtools/test-null.sh | 19 ++++++++++++++----- > 1 file changed, 14 insertions(+), 5 deletions(-) > > diff --git a/devtools/test-null.sh b/devtools/test-null.sh > index 61879e3e6..6928a6c15 100755 > --- a/devtools/test-null.sh > +++ b/devtools/test-null.sh > @@ -1,17 +1,26 @@ > #! /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
You don't really care that testpmd is a file, prefer -e. > + echo 'ERROR: testpmd cannot be found' >&2 > + exit 1 > +fi > + > +unset libs You reference it later, I suppose you meant libs= > +if ldd $testpmd | grep -q librte_ ; then > + libs='-d librte_mempool_ring.so -d librte_pmd_null.so' > 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 > -- > 2.21.0 > -- David Marchand