Check that the DPDK hugepage directory exists and hugepages are mounted there before running pktio validation tests.
Signed-off-by: Matias Elo <[email protected]> --- platform/linux-generic/test/pktio/pktio_run_dpdk | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/platform/linux-generic/test/pktio/pktio_run_dpdk b/platform/linux-generic/test/pktio/pktio_run_dpdk index 50e910a..e006e8e 100755 --- a/platform/linux-generic/test/pktio/pktio_run_dpdk +++ b/platform/linux-generic/test/pktio/pktio_run_dpdk @@ -17,6 +17,9 @@ PATH=$(dirname $0):$PATH PATH=$(dirname $0)/../../../../test/validation/pktio:$PATH PATH=.:$PATH +# DPDK hugepage directory +DPDK_HUGEPAGE_DIR="/mnt/huge" + pktio_main_path=$(which pktio_main${EXEEXT}) if [ -x "$pktio_main_path" ] ; then echo "running with pktio_main: $pktio_run_path" @@ -57,9 +60,23 @@ run_test() run() { + local skip_test=0 + # need to be root to set the interface. if [ "$(id -u)" != "0" ]; then - echo "pktio: need to be root to setup DPDK interfaces." + echo "dpdk pktio: need to be root to setup DPDK interfaces" + skip_test=1 + # check that hugepages are available + elif [ ! -d $DPDK_HUGEPAGE_DIR ]; then + echo "dpdk pktio: hugepage directory \"$DPDK_HUGEPAGE_DIR\" not found" + skip_test=1 + elif !(grep -qs "$DPDK_HUGEPAGE_DIR" /proc/mounts); then + echo "dpdk pktio: hugepages not mounted to \"$DPDK_HUGEPAGE_DIR\"" + skip_test=1 + fi + + if [ $skip_test -ne 0 ]; then + echo "test skipped" return $TEST_SKIPPED fi -- 1.9.1 _______________________________________________ lng-odp mailing list [email protected] https://lists.linaro.org/mailman/listinfo/lng-odp
