[Top posting, as HTML email] HI Chakka, When linking against DPDK in Shared-library mode, the .so files to handle drivers are not automatically loaded; https://doc.dpdk.org/guides-20.05/linux_gsg/linux_eal_parameters.html#linux-specific-eal-parameters Notice the -d flag in particular: "-d ", when used and pointed to the correct .so for the ice pmd .so file, DPDK will be able to initialize the NIC. As a workaround/alternative, static-linking against DPDK will avoid the requirement to use "-d" EAL arg to load the PCI device .so drivers. Hope that helps, -Harry From: Lokesh Chakka Sent: Monday, August 1, 2022 9:20 AM To: Tkachuk, Georgii Cc: users Subject: Re: intel 100 Gbps Network card shutting down after enabling dpdk After booting the server, the following are commands I have executed. Immediately after doing devbind -b, cards are going down. I am able to see that green leds are turning off. following is the two lines of code and output of code. number of ports are reporting as zero ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ $ lspci | grep -i intel c3:00.0 Ethernet controller: Intel Corporation Ethernet Controller E810-C for QSFP (rev 02) c3:00.1 Ethernet controller: Intel Corporation Ethernet Controller E810-C for QSFP (rev 02) $ sudo dpdk-devbind.py -b vfio-pci c3:00.0 c3:00.1 $ sudo dpdk-devbind.py -s Network devices using DPDK-compatible driver ============================================ 0000:c3:00.0 'Ethernet Controller E810-C for QSFP 1592' drv=vfio-pci unused=ice 0000:c3:00.1 'Ethernet Controller E810-C for QSFP 1592' drv=vfio-pci unused=ice Network devices using kernel driver =================================== 0000:05:00.0 'NetXtreme BCM5719 Gigabit Ethernet PCIe 1657' if=eno1 drv=tg3 unused=vfio-pci 0000:05:00.1 'NetXtreme BCM5719 Gigabit Ethernet PCIe 1657' if=eno2 drv=tg3 unused=vfio-pci 0000:05:00.2 'NetXtreme BCM5719 Gigabit Ethernet PCIe 1657' if=eno3 drv=tg3 unused=vfio-pci 0000:05:00.3 'NetXtreme BCM5719 Gigabit Ethernet PCIe 1657' if=eno4 drv=tg3 unused=vfio-pci 0000:83:00.0 'BCM57508 NetXtreme-E 10Gb/25Gb/40Gb/50Gb/100Gb/200Gb Ethernet 1750' if=ens3f0np0 drv=bnxt_en unused=vfio-pci 0000:83:00.1 'BCM57508 NetXtreme-E 10Gb/25Gb/40Gb/50Gb/100Gb/200Gb Ethernet 1750' if=ens3f1np1 drv=bnxt_en unused=vfio-pci No 'Baseband' devices detected ============================== Crypto devices using kernel driver ================================== 0000:02:00.1 'Zeppelin Cryptographic Coprocessor NTBCCP 1468' drv=ccp unused=vfio-pci 0000:03:00.2 'Family 17h (Models 00h-0fh) Platform Security Processor 1456' drv=ccp unused=vfio-pci 0000:41:00.1 'Zeppelin Cryptographic Coprocessor NTBCCP 1468' drv=ccp unused=vfio-pci 0000:42:00.2 'Family 17h (Models 00h-0fh) Platform Security Processor 1456' drv=ccp unused=vfio-pci 0000:81:00.1 'Zeppelin Cryptographic Coprocessor NTBCCP 1468' drv=ccp unused=vfio-pci 0000:82:00.2 'Family 17h (Models 00h-0fh) Platform Security Processor 1456' drv=ccp unused=vfio-pci 0000:c1:00.1 'Zeppelin Cryptographic Coprocessor NTBCCP 1468' drv=ccp unused=vfio-pci 0000:c2:00.2 'Family 17h (Models 00h-0fh) Platform Security Processor 1456' drv=ccp unused=vfio-pci No 'DMA' devices detected ========================= No 'Eventdev' devices detected ============================== No 'Mempool' devices detected ============================= No 'Compress' devices detected ============================== No 'Misc (rawdev)' devices detected =================================== No 'Regex' devices detected =========================== $ cat one.c #include #include int main(int argc, char *argv[]) { struct rte_mempool *mbuf_pool; unsigned nb_ports; uint16_t portid; /* Initializion the Environment Abstraction Layer (EAL). 8< */ int ret = rte_eal_init(argc, argv); if (ret < 0) rte_exit(EXIT_FAILURE, "Error with EAL initialization\n"); /* >8 End of initialization the Environment Abstraction Layer (EAL). */ argc -= ret; argv += ret; fprintf( stderr, "%s %d\n", __func__, __LINE__ ); /* Check that there is an even number of ports to send/receive on. */ nb_ports = rte_eth_dev_count_avail(); fprintf( stderr, "%s %d nb_ports: %u\n", __func__, __LINE__, nb_ports ); } $ gcc one.c `pkg-config --cflags libdpdk --libs libdpdk` $ sudo ./a.out EAL: Detected CPU lcores: 64 EAL: Detected NUMA nodes: 4 EAL: Detected shared linkage of DPDK EAL: Multi-process socket /var/run/dpdk/rte/mp_socket EAL: Selected IOVA mode 'VA' EAL: No available 1048576 kB hugepages reported EAL: VFIO support initialized EAL: Using IOMMU type 1 (Type 1) EAL: Probe PCI driver: net_ice (8086:1592) device: 0000:c3:00.0 (socket 3) set_mempolicy: Invalid argument EAL: Releasing PCI mapped resource for 0000:c3:00.0 EAL: Calling pci_unmap_resource for 0000:c3:00.0 at 0x4102000000 EAL: Calling pci_unmap_resource for 0000:c3:00.0 at 0x4104000000 EAL: Requested device 0000:c3:00.0 cannot be used EAL: Using IOMMU type 1 (Type 1) EAL: Probe PCI driver: net_ice (8086:1592) device: 0000:c3:00.1 (socket 3) set_mempolicy: Invalid argument EAL: Releasing PCI mapped resource for 0000:c3:00.1 EAL: Calling pci_unmap_resource for 0000:c3:00.1 at 0x4104010000 EAL: Calling pci_unmap_resource for 0000:c3:00.1 at 0x4106010000 EAL: Requested device 0000:c3:00.1 cannot be used TELEMETRY: No legacy callbacks, legacy socket not created main 20 main 23 nb_ports: 0 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Thanks & Regards -- Lokesh Chakka. On Mon, Aug 1, 2022 at 12:44 PM Tkachuk, Georgii > wrote: Please check “sudo dpdk-devbind.py -s” to see if both ports are bound to vfio-pci And some questions: What DPDK app are you running? What are your EAL command line arguments? What do you mean by going down (as reported by what?) Thank you, Georgii From: Lokesh Chakka > Sent: Monday, August 01, 2022 12:09 AM To: users > Subject: intel 100 Gbps Network card shutting down after enabling dpdk hello, Recently I have bought one intel network card https://ark.intel.com/content/www/us/en/ark/products/210969/intel-ethernet-network-adapter-e8102cqda2.html The moment I do devbind, cards are shutting down. $ lspci | grep -i intel c3:00.0 Ethernet controller: Intel Corporation Ethernet Controller E810-C for QSFP (rev 02) c3:00.1 Ethernet controller: Intel Corporation Ethernet Controller E810-C for QSFP (rev 02) $ sudo dpdk-devbind.py -b vfio-pci c3:00.0 c3:00.1 After this, cards are going down. EAL is giving following error EAL: Requested device 0000:c3:00.1 cannot be used EAL: Error - exiting with code: 1 Cause: Error: number of ports must be even Did anyone face this issue or anyone know how to fix the issue? Thanks & Regards -- Lokesh Chakka.