$ sudo -i # cat /sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepages 0 # echo 4096 > /sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepages # grep -i huge /proc/meminfo AnonHugePages: 36864 kB ShmemHugePages: 0 kB HugePages_Total: 4096 HugePages_Free: 4096 HugePages_Rsvd: 0 HugePages_Surp: 0 Hugepagesize: 2048 kB # mkdir /mnt/huge # mount -t hugetlbfs nodev /mnt/huge # mount | grep /mnt/huge nodev on /mnt/huge type hugetlbfs (rw,relatime,seclabel,pagesize=2M) # exit $ lspci -nn | grep Ether 02:00.0 Ethernet controller [0200]: Intel Corporation I350 Gigabit Network Connection [8086:1521] (rev 01) 02:00.1 Ethernet controller [0200]: Intel Corporation I350 Gigabit Network Connection [8086:1521] (rev 01) 06:00.0 Ethernet controller [0200]: Broadcom Limited NetXtreme BCM5719 Gigabit Ethernet PCIe [14e4:1657] (rev 01) 06:00.1 Ethernet controller [0200]: Broadcom Limited NetXtreme BCM5719 Gigabit Ethernet PCIe [14e4:1657] (rev 01) 06:00.2 Ethernet controller [0200]: Broadcom Limited NetXtreme BCM5719 Gigabit Ethernet PCIe [14e4:1657] (rev 01) 06:00.3 Ethernet controller [0200]: Broadcom Limited NetXtreme BCM5719 Gigabit Ethernet PCIe [14e4:1657] (rev 01) 09:00.0 Ethernet controller [0200]: Intel Corporation Ethernet Controller X710 for 10GbE SFP+ [8086:1572] (rev 01) 09:00.1 Ethernet controller [0200]: Intel Corporation Ethernet Controller X710 for 10GbE SFP+ [8086:1572] (rev 01) 09:02.0 Ethernet controller [0200]: Intel Corporation XL710/X710 Virtual Function [8086:154c] (rev 01) 09:02.1 Ethernet controller [0200]: Intel Corporation XL710/X710 Virtual Function [8086:154c] (rev 01) 09:02.2 Ethernet controller [0200]: Intel Corporation XL710/X710 Virtual Function [8086:154c] (rev 01) 09:02.3 Ethernet controller [0200]: Intel Corporation XL710/X710 Virtual Function [8086:154c] (rev 01) 09:0a.0 Ethernet controller [0200]: Intel Corporation XL710/X710 Virtual Function [8086:154c] (rev 01) 09:0a.1 Ethernet controller [0200]: Intel Corporation XL710/X710 Virtual Function [8086:154c] (rev 01) 09:0a.2 Ethernet controller [0200]: Intel Corporation XL710/X710 Virtual Function [8086:154c] (rev 01) 09:0a.3 Ethernet controller [0200]: Intel Corporation XL710/X710 Virtual Function [8086:154c] (rev 01) $ lsmod | grep i40e i40e 311296 0 ptp 20480 3 i40e,tg3,igb $ ./dpdk-devbind.py --status-dev net Network devices using DPDK-compatible driver ============================================ Network devices using kernel driver =================================== 0000:02:00.0 'I350 Gigabit Network Connection 1521' if=eno1 drv=igb unused=igb_uio *Active* 0000:02:00.1 'I350 Gigabit Network Connection 1521' if=eno2 drv=igb unused=igb_uio 0000:06:00.0 'NetXtreme BCM5719 Gigabit Ethernet PCIe 1657' if=ens3f0 drv=tg3 unused=igb_uio 0000:06:00.1 'NetXtreme BCM5719 Gigabit Ethernet PCIe 1657' if=ens3f1 drv=tg3 unused=igb_uio 0000:06:00.2 'NetXtreme BCM5719 Gigabit Ethernet PCIe 1657' if=ens3f2 drv=tg3 unused=igb_uio *Active* 0000:06:00.3 'NetXtreme BCM5719 Gigabit Ethernet PCIe 1657' if=ens3f3 drv=tg3 unused=igb_uio 0000:09:00.0 'Ethernet Controller X710 for 10GbE SFP+ 1572' if=ens2f0 drv=i40e unused=igb_uio 0000:09:00.1 'Ethernet Controller X710 for 10GbE SFP+ 1572' if=ens2f1 drv=i40e unused=igb_uio Other Network devices ===================== $ sudo modprobe uio $ sudo insmod /opt/dpdk/dpdk-17.08/x86_64-native-linuxapp-gcc/kmod/igb_uio.ko $ sudo ip link set down ens2f0 $ sudo ip link set down ens2f1 $ sudo ./dpdk-devbind.py -u 09:00.0 $ sudo ./dpdk-devbind.py -u 09:00.1 $ sudo ./dpdk-devbind.py --bind=igb_uio 09:00.0 $ sudo ./dpdk-devbind.py --bind=igb_uio 09:00.1 $ ./dpdk-devbind.py --status-dev net Network devices using DPDK-compatible driver ============================================ 0000:09:00.0 'Ethernet Controller X710 for 10GbE SFP+ 1572' drv=igb_uio unused= 0000:09:00.1 'Ethernet Controller X710 for 10GbE SFP+ 1572' drv=igb_uio unused= Network devices using kernel driver =================================== 0000:02:00.0 'I350 Gigabit Network Connection 1521' if=eno1 drv=igb unused=igb_uio *Active* 0000:02:00.1 'I350 Gigabit Network Connection 1521' if=eno2 drv=igb unused=igb_uio 0000:06:00.0 'NetXtreme BCM5719 Gigabit Ethernet PCIe 1657' if=ens3f0 drv=tg3 unused=igb_uio 0000:06:00.1 'NetXtreme BCM5719 Gigabit Ethernet PCIe 1657' if=ens3f1 drv=tg3 unused=igb_uio 0000:06:00.2 'NetXtreme BCM5719 Gigabit Ethernet PCIe 1657' if=ens3f2 drv=tg3 unused=igb_uio *Active* 0000:06:00.3 'NetXtreme BCM5719 Gigabit Ethernet PCIe 1657' if=ens3f3 drv=tg3 unused=igb_uio Other Network devices ===================== $ lspci -nn | grep Ether 02:00.0 Ethernet controller [0200]: Intel Corporation I350 Gigabit Network Connection [8086:1521] (rev 01) 02:00.1 Ethernet controller [0200]: Intel Corporation I350 Gigabit Network Connection [8086:1521] (rev 01) 06:00.0 Ethernet controller [0200]: Broadcom Limited NetXtreme BCM5719 Gigabit Ethernet PCIe [14e4:1657] (rev 01) 06:00.1 Ethernet controller [0200]: Broadcom Limited NetXtreme BCM5719 Gigabit Ethernet PCIe [14e4:1657] (rev 01) 06:00.2 Ethernet controller [0200]: Broadcom Limited NetXtreme BCM5719 Gigabit Ethernet PCIe [14e4:1657] (rev 01) 06:00.3 Ethernet controller [0200]: Broadcom Limited NetXtreme BCM5719 Gigabit Ethernet PCIe [14e4:1657] (rev 01) 09:00.0 Ethernet controller [0200]: Intel Corporation Ethernet Controller X710 for 10GbE SFP+ [8086:1572] (rev 01) 09:00.1 Ethernet controller [0200]: Intel Corporation Ethernet Controller X710 for 10GbE SFP+ [8086:1572] (rev 01) $ sudo ./app/x86_64-native-linuxapp-gcc/pktgen -l 2-6 -n 1 -w 09:00.0 -w 09:00.1 -v -- -P -m [3-4].0 [5-6].1 Copyright (c) <2010-2017>, Intel Corporation. All rights reserved. Powered by DPDK EAL: Detected 16 lcore(s) EAL: RTE Version: 'DPDK 17.08.0' EAL: No free hugepages reported in hugepages-1048576kB EAL: Probing VFIO support... EAL: PCI device 0000:09:00.0 on NUMA socket 0 EAL: probe driver: 8086:1572 net_i40e << HARD CRASH / HAD TO RESET POWER >> $ sudo -i # cat /sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepages 0 # echo 4096 > /sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepages # grep -i huge /proc/meminfo AnonHugePages: 36864 kB ShmemHugePages: 0 kB HugePages_Total: 4096 HugePages_Free: 4096 HugePages_Rsvd: 0 HugePages_Surp: 0 Hugepagesize: 2048 kB # mkdir /mnt/huge # mount -t hugetlbfs nodev /mnt/huge # mount | grep /mnt/huge nodev on /mnt/huge type hugetlbfs (rw,relatime,seclabel,pagesize=2M) # exit $ sudo modprobe uio $ sudo insmod /opt/dpdk/dpdk-17.08/x86_64-native-linuxapp-gcc/kmod/igb_uio.ko $ sudo modprobe vfio-pci $ sudo ip link set down ens2f0 $ sudo ip link set down ens2f1 $ sudo ./dpdk-devbind.py -u 09:00.0 $ sudo ./dpdk-devbind.py -u 09:00.1 $ sudo ./dpdk-devbind.py -b vfio-pci 09:00.0 $ sudo ./dpdk-devbind.py -b vfio-pci 09:00.1 $ sudo ./dpdk-devbind.py --status-dev net Network devices using DPDK-compatible driver ============================================ 0000:09:00.0 'Ethernet Controller X710 for 10GbE SFP+ 1572' drv=vfio-pci unused=igb_uio 0000:09:00.1 'Ethernet Controller X710 for 10GbE SFP+ 1572' drv=vfio-pci unused=igb_uio Network devices using kernel driver =================================== 0000:02:00.0 'I350 Gigabit Network Connection 1521' if=eno1 drv=igb unused=igb_uio,vfio-pci *Active* 0000:02:00.1 'I350 Gigabit Network Connection 1521' if=eno2 drv=igb unused=igb_uio,vfio-pci 0000:06:00.0 'NetXtreme BCM5719 Gigabit Ethernet PCIe 1657' if=ens3f0 drv=tg3 unused=igb_uio,vfio-pci 0000:06:00.1 'NetXtreme BCM5719 Gigabit Ethernet PCIe 1657' if=ens3f1 drv=tg3 unused=igb_uio,vfio-pci 0000:06:00.2 'NetXtreme BCM5719 Gigabit Ethernet PCIe 1657' if=ens3f2 drv=tg3 unused=igb_uio,vfio-pci *Active* 0000:06:00.3 'NetXtreme BCM5719 Gigabit Ethernet PCIe 1657' if=ens3f3 drv=tg3 unused=igb_uio,vfio-pci Other Network devices ===================== $ sudo ./app/x86_64-native-linuxapp-gcc/pktgen -l 2-6 -n 1 -w 09:00.0 -w 09:00.1 -v -- -P -m [3-4].0 [5-6].1 Copyright (c) <2010-2017>, Intel Corporation. All rights reserved. Powered by DPDK EAL: Detected 16 lcore(s) EAL: RTE Version: 'DPDK 17.08.0' EAL: No free hugepages reported in hugepages-1048576kB EAL: Probing VFIO support... EAL: VFIO support initialized EAL: PCI device 0000:09:00.0 on NUMA socket 0 EAL: probe driver: 8086:1572 net_i40e EAL: 0000:09:00.0 failed to select IOMMU type EAL: Requested device 0000:09:00.0 cannot be used EAL: PCI device 0000:09:00.1 on NUMA socket 0 EAL: probe driver: 8086:1572 net_i40e EAL: 0000:09:00.1 failed to select IOMMU type EAL: Requested device 0000:09:00.1 cannot be used Copyright (c) <2010-2017>, Intel Corporation. All rights reserved. Pktgen created by: Keith Wiles -- >>> Powered by DPDK <<< >>> Packet Burst 64, RX Desc 1024, TX Desc 2048, mbufs/port 16384, mbuf cache 2048 !PANIC!: *** Did not find any ports to use *** PANIC in pktgen_config_ports(): *** Did not find any ports to use ***6: [./app/x86_64-native-linuxapp-gcc/pktgen() [0x44ba76]] 5: [/lib64/libc.so.6(__libc_start_main+0xf5) [0x7f16b7238c05]] 4: [./app/x86_64-native-linuxapp-gcc/pktgen(main+0x57c) [0x448edc]] 3: [./app/x86_64-native-linuxapp-gcc/pktgen(pktgen_config_ports+0x15b7) [0x470d37]] 2: [./app/x86_64-native-linuxapp-gcc/pktgen(__rte_panic+0xb8) [0x4432bc]] 1: [./app/x86_64-native-linuxapp-gcc/pktgen(rte_dump_stack+0x1a) [0x4b245a]] Aborted