Fortinet white logo
Fortinet white logo

KVM Administration Guide

Early initialization

Early initialization

You can use the DPDK early initialization log to check that you have configured DPDK correctly. For example, you can confirm that the CPUs and interfaces are bound to DPDK usage.

diagnose dpdk log show early-init
 -----------------------------------------------------------------
     DPDK early initialzation starts at 2020-11-26 09:53:14(UTC)
 -----------------------------------------------------------------
 Content of early configuration file:
     status=1
     multiqueue=1
     sleep-on-idle=0
     elasticbuffer=0
     per-session-accounting=1
     hugepage-percentage=25
     nr_hugepages=10090
     interfaces=port2 port3 port4 port5
     cpus=0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
     rxcpus=0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
     vnpcpus=0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
     ipscpus=0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
     txcpus=0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
 Parse config file success!

 Check CPU definitions 'cpus'
 Check CPU definitions 'rxcpus'
 Check CPU definitions 'ipscpus'
 Check CPU definitions 'vnpcpus'
 Check CPU definitions 'txcpus'
 Check CPUs success!

 Huge page allocation done

 Ports enabled for DPDK:
     port2
     port3
     port4
     port5
 Port name to device name mapping:
     port1: eth0
     port2: eth1
     port3: eth2
     port4: eth3
     port5: eth4
     port6: eth5
     port7: eth6
     port8: eth7
     port9: eth8
     port10: eth9
     port11: eth10
     port12: eth11
     port13: eth12
     port14: eth13
     port15: eth14
     port16: eth15
     port17: eth16
     port18: eth17
     port19: eth18
     port20: eth19
     port21: eth20
     port22: eth21
     port23: eth22
     port24: eth23

 Start enabling DPDK kernel driver for port 'port2'...
 Getting PCI device info for eth1...
 reading pci dev /sys/class/net/eth1
 link path: ../../devices/pci0000:00/0000:00:08.0/net/eth1
 Device info of eth1:
     dev_name: eth1
     macaddr: 52:54:00:7c:08:31
     pci_vendor: 0x15b3
     pci_device: 0x1018
     pci_id: 0000:00:08.0
     pci_domain: 0
     pci_bus: 0
     pci_devid: 8
     pci_function: 0
     guid: n/a
 Device eth1 is mlx5_core name changed to slv1
 Creating DPDK kernel driver for device eth1...
 Add VNP dev: eth1 PCI: 0000:00:08.0, Succeeded
 DPDK kernel driver for eth1 successfully created
 DPDK kernel driver enabled for port 'port2' (device name 'eth1')

 Start enabling DPDK kernel driver for port 'port3'...
 Getting PCI device info for eth2...
 reading pci dev /sys/class/net/eth2
 link path: ../../devices/pci0000:00/0000:00:09.0/net/eth2
 Device info of eth2:
     dev_name: eth2
     macaddr: 52:54:00:7c:08:32
     pci_vendor: 0x15b3
     pci_device: 0x1018
     pci_id: 0000:00:09.0
     pci_domain: 0
     pci_bus: 0
     pci_devid: 9
     pci_function: 0
     guid: n/a
 Device eth2 is mlx5_core name changed to slv2
 Creating DPDK kernel driver for device eth2...
 Add VNP dev: eth2 PCI: 0000:00:09.0, Succeeded
 DPDK kernel driver for eth2 successfully created
 DPDK kernel driver enabled for port 'port3' (device name 'eth2')

 Start enabling DPDK kernel driver for port 'port4'...
 Getting PCI device info for eth3...
 reading pci dev /sys/class/net/eth3
 link path: ../../devices/pci0000:00/0000:00:0a.0/net/eth3
 Device info of eth3:
     dev_name: eth3
     macaddr: 52:54:00:7c:08:33
     pci_vendor: 0x15b3
     pci_device: 0x1018
     pci_id: 0000:00:0a.0
     pci_domain: 0
     pci_bus: 0
     pci_devid: 10
     pci_function: 0
     guid: n/a
 Device eth3 is mlx5_core name changed to slv3
 Creating DPDK kernel driver for device eth3...
 Add VNP dev: eth3 PCI: 0000:00:0a.0, Succeeded
 DPDK kernel driver for eth3 successfully created
 DPDK kernel driver enabled for port 'port4' (device name 'eth3')
 
 Start enabling DPDK kernel driver for port 'port5'...
 Getting PCI device info for eth4...
 reading pci dev /sys/class/net/eth4
 link path: ../../devices/pci0000:00/0000:00:0b.0/net/eth4
 Device info of eth4:
     dev_name: eth4
     macaddr: 52:54:00:7c:08:34
     pci_vendor: 0x15b3
     pci_device: 0x1018
     pci_id: 0000:00:0b.0
     pci_domain: 0
     pci_bus: 0
     pci_devid: 11
     pci_function: 0
     guid: n/a
 Device eth4 is mlx5_core name changed to slv4
 Creating DPDK kernel driver for device eth4...
 Add VNP dev: eth4 PCI: 0000:00:0b.0, Succeeded
 DPDK kernel driver for eth4 successfully created
 DPDK kernel driver enabled for port 'port5' (device name 'eth4')
 Bind ports success!

 Make UIO nodes success!

 DPDK sanity test passed

Early initialization

Early initialization

You can use the DPDK early initialization log to check that you have configured DPDK correctly. For example, you can confirm that the CPUs and interfaces are bound to DPDK usage.

diagnose dpdk log show early-init
 -----------------------------------------------------------------
     DPDK early initialzation starts at 2020-11-26 09:53:14(UTC)
 -----------------------------------------------------------------
 Content of early configuration file:
     status=1
     multiqueue=1
     sleep-on-idle=0
     elasticbuffer=0
     per-session-accounting=1
     hugepage-percentage=25
     nr_hugepages=10090
     interfaces=port2 port3 port4 port5
     cpus=0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
     rxcpus=0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
     vnpcpus=0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
     ipscpus=0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
     txcpus=0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
 Parse config file success!

 Check CPU definitions 'cpus'
 Check CPU definitions 'rxcpus'
 Check CPU definitions 'ipscpus'
 Check CPU definitions 'vnpcpus'
 Check CPU definitions 'txcpus'
 Check CPUs success!

 Huge page allocation done

 Ports enabled for DPDK:
     port2
     port3
     port4
     port5
 Port name to device name mapping:
     port1: eth0
     port2: eth1
     port3: eth2
     port4: eth3
     port5: eth4
     port6: eth5
     port7: eth6
     port8: eth7
     port9: eth8
     port10: eth9
     port11: eth10
     port12: eth11
     port13: eth12
     port14: eth13
     port15: eth14
     port16: eth15
     port17: eth16
     port18: eth17
     port19: eth18
     port20: eth19
     port21: eth20
     port22: eth21
     port23: eth22
     port24: eth23

 Start enabling DPDK kernel driver for port 'port2'...
 Getting PCI device info for eth1...
 reading pci dev /sys/class/net/eth1
 link path: ../../devices/pci0000:00/0000:00:08.0/net/eth1
 Device info of eth1:
     dev_name: eth1
     macaddr: 52:54:00:7c:08:31
     pci_vendor: 0x15b3
     pci_device: 0x1018
     pci_id: 0000:00:08.0
     pci_domain: 0
     pci_bus: 0
     pci_devid: 8
     pci_function: 0
     guid: n/a
 Device eth1 is mlx5_core name changed to slv1
 Creating DPDK kernel driver for device eth1...
 Add VNP dev: eth1 PCI: 0000:00:08.0, Succeeded
 DPDK kernel driver for eth1 successfully created
 DPDK kernel driver enabled for port 'port2' (device name 'eth1')

 Start enabling DPDK kernel driver for port 'port3'...
 Getting PCI device info for eth2...
 reading pci dev /sys/class/net/eth2
 link path: ../../devices/pci0000:00/0000:00:09.0/net/eth2
 Device info of eth2:
     dev_name: eth2
     macaddr: 52:54:00:7c:08:32
     pci_vendor: 0x15b3
     pci_device: 0x1018
     pci_id: 0000:00:09.0
     pci_domain: 0
     pci_bus: 0
     pci_devid: 9
     pci_function: 0
     guid: n/a
 Device eth2 is mlx5_core name changed to slv2
 Creating DPDK kernel driver for device eth2...
 Add VNP dev: eth2 PCI: 0000:00:09.0, Succeeded
 DPDK kernel driver for eth2 successfully created
 DPDK kernel driver enabled for port 'port3' (device name 'eth2')

 Start enabling DPDK kernel driver for port 'port4'...
 Getting PCI device info for eth3...
 reading pci dev /sys/class/net/eth3
 link path: ../../devices/pci0000:00/0000:00:0a.0/net/eth3
 Device info of eth3:
     dev_name: eth3
     macaddr: 52:54:00:7c:08:33
     pci_vendor: 0x15b3
     pci_device: 0x1018
     pci_id: 0000:00:0a.0
     pci_domain: 0
     pci_bus: 0
     pci_devid: 10
     pci_function: 0
     guid: n/a
 Device eth3 is mlx5_core name changed to slv3
 Creating DPDK kernel driver for device eth3...
 Add VNP dev: eth3 PCI: 0000:00:0a.0, Succeeded
 DPDK kernel driver for eth3 successfully created
 DPDK kernel driver enabled for port 'port4' (device name 'eth3')
 
 Start enabling DPDK kernel driver for port 'port5'...
 Getting PCI device info for eth4...
 reading pci dev /sys/class/net/eth4
 link path: ../../devices/pci0000:00/0000:00:0b.0/net/eth4
 Device info of eth4:
     dev_name: eth4
     macaddr: 52:54:00:7c:08:34
     pci_vendor: 0x15b3
     pci_device: 0x1018
     pci_id: 0000:00:0b.0
     pci_domain: 0
     pci_bus: 0
     pci_devid: 11
     pci_function: 0
     guid: n/a
 Device eth4 is mlx5_core name changed to slv4
 Creating DPDK kernel driver for device eth4...
 Add VNP dev: eth4 PCI: 0000:00:0b.0, Succeeded
 DPDK kernel driver for eth4 successfully created
 DPDK kernel driver enabled for port 'port5' (device name 'eth4')
 Bind ports success!

 Make UIO nodes success!

 DPDK sanity test passed