Search code examples
driverdpdkmellanox

Mellanox nic using kernel driver with dpdk


(Sorry I'm running on an isolated network so I can't copy-paste everything)

I have mlx5 nic in my system and I want to run dpdk application. I've already built everything and my application is running and finding the ports. It says: EAL: Probe PCI driver: mlx5_pci... (socket -1)

Everything works but when I use dpdk-devbind status I see that the ports are under the "Network devices using kernel driver" Is that ok? Also one of my nics is connectX6 and one is connectX5 but both use the driver "mlx5_core"

I've seen that on different nics dpdk-devbind status shows dpdk driver and not kernel driver. Does it mean that I'm running it wrong?


Solution

  • That is OK. The NIC in question uses so-called bifurcated driver model. In it, the control plane is maintained by the Linux driver and the DPDK PMD is supposed to attach to that. For many other NIC vendors, that isn't the same, — the user needs to bind the ports to a DPDK-compatible IO-driver (vfio-pci, for instance).

    Both NIC variants in question (5 and 6) indeed use the same DPDK PMD (and thus the same kernel driver), — as per compatibility list. So that is OK, too.