Change-Id: Ic43742256e3f69361d0413b672341f1ea4cc02fc
Signed-off-by: Yichen Wang <[email protected]>
Conflicts:
scripts/dpdk_setup_ports.py
# 32 : no errors - mlx share object should be loaded
MLX_EXIT_CODE = 32
+out = subprocess.check_output(['lsmod'])
+DPDK_DRIVER = 'vfio-pci' if out.find('vfio_pci') != -1 else 'igb_uio'
class ConfigCreator(object):
mandatory_interface_fields = ['Slot_str', 'Device_str', 'NUMA']
if mellanox:
drv="mlx5_core"
else:
- drv="igb_uio"
+ drv=DPDK_DRIVER
cmd='%s dpdk_nic_bind.py --bind=%s %s ' % (sys.executable, drv,key)
print(cmd)
PATH=$PATH:/sbin:/usr/sbin
-if ! lsmod | grep -q igb_uio ; then
+VFIO_PCI_KO=`find /lib/modules/$(uname -r) -type f -name vfio-pci.ko`
+if [ $VFIO_PCI_KO ] && grep "iommu=pt" /proc/cmdline | grep -q "intel_iommu=on" ; then
+ modprobe vfio-pci
+elif ! lsmod | grep -q igb_uio ; then
echo "Loading kernel drivers for the first time"
modprobe uio
if [ $? -ne 0 ]; then