diff options
3 files changed, 12 insertions, 2 deletions
diff --git a/VNFs/DPPD-PROX/helper-scripts/rapid/check_prox_system_setup.sh b/VNFs/DPPD-PROX/helper-scripts/rapid/check_prox_system_setup.sh index 834554dc..3cf1113d 100755 --- a/VNFs/DPPD-PROX/helper-scripts/rapid/check_prox_system_setup.sh +++ b/VNFs/DPPD-PROX/helper-scripts/rapid/check_prox_system_setup.sh @@ -52,6 +52,12 @@ then ## Only then, they will be able to connect to the PROX instance ## and start the testing touch "$system_ready" + ## On some systems, we still need to use the igb_uio driver. + ## Example: good performance on AWS with the ENA interface. + ## Make sure that you change devbind.sh to use the preferred + ## driver. vfio is the default. + modprobe uio + insmod /opt/rapid/dpdk/build/kmod/igb_uio.ko wc_activate=1 exit 0 ;; isolated_cores=*) diff --git a/VNFs/DPPD-PROX/helper-scripts/rapid/devbind.sh b/VNFs/DPPD-PROX/helper-scripts/rapid/devbind.sh index fe7a5d4f..0bde3cc2 100755 --- a/VNFs/DPPD-PROX/helper-scripts/rapid/devbind.sh +++ b/VNFs/DPPD-PROX/helper-scripts/rapid/devbind.sh @@ -2,9 +2,11 @@ link="$(sudo ip -o link | grep MACADDRESS |cut -d":" -f 2)" if [ -n "$link" ]; then echo Need to bind + # Uncomment one of the following lines, depending on which driver + # you want to use: vfio-pci or igb_uio #sudo /opt/rapid/dpdk/usertools/dpdk-devbind.py --force --bind igb_uio $(sudo /opt/rapid/dpdk/usertools/dpdk-devbind.py --status |grep $link | cut -d" " -f 1) sudo driverctl set-override $(sudo ethtool -i $link |grep bus-info | cut -d" " -f 2) vfio-pci else - echo Assuming port is already bound to vfio-pci + echo Assuming port is already bound to DPDK poll mode driver fi exit 0 diff --git a/rapidvm/dib/elements/rapid/post-install.d/50-compile-dpdk b/rapidvm/dib/elements/rapid/post-install.d/50-compile-dpdk index 38d07486..6a7fdf36 100755 --- a/rapidvm/dib/elements/rapid/post-install.d/50-compile-dpdk +++ b/rapidvm/dib/elements/rapid/post-install.d/50-compile-dpdk @@ -24,7 +24,9 @@ export RTE_KERNELDIR="/lib/modules/${LATEST_KERNEL_INSTALLED}/build" pushd ${RTE_SDK} > /dev/null 2>&1 make config T=${RTE_TARGET} -#sed -i 's/CONFIG_RTE_EAL_IGB_UIO=n/CONFIG_RTE_EAL_IGB_UIO=y/g' ${RTE_SDK}/build/.config +# Starting from DPDK 20.05, the IGB_UIO driver is not compiled by default. +# Uncomment the sed command to enable the driver compilation +sed -i 's/CONFIG_RTE_EAL_IGB_UIO=n/CONFIG_RTE_EAL_IGB_UIO=y/g' ${RTE_SDK}/build/.config #sed -i 's/CONFIG_RTE_LIBRTE_PMD_AESNI_MB=n/CONFIG_RTE_LIBRTE_PMD_AESNI_MB=y/g' ${RTE_SDK}/build/.config sed -i 's/CONFIG_RTE_APP_TEST=y/CONFIG_RTE_APP_TEST=n/g' ${RTE_SDK}/build/.config sed -i 's/CONFIG_RTE_TEST_PMD=y/CONFIG_RTE_TEST_PMD=n/g' ${RTE_SDK}/build/.config |