[Help] Running DPDK on proxmox, inside VMs using SR-IOV to forward VFs to VMs and bind the VF to dpdk inside the VM.

Posted by Ginnungagap_Void@reddit | sysadmin | View on Reddit | 4 comments

Hello!

We've been trying for a week and a half to make this project happen

Use SRIOV to split the Intel X520 DA2 into 4 virtual functions per port and forward each VF to a virtual machine.

In the VM bind this interface to dpdk and use it in OVS

As we didn't manage to get it working in the VMs we bound the VFs on the host and they worked

However when inside the VMs, no interface works, dpdk-testpmd says the interface has 0 RX or TX queues.

We updated the ixgvevf and ixbge drivers on both the host and VM to the latest from Intel, and, we use the same 6.8 kernel on both host and VM.

The server we use now is a DL380 Gen9, that has SRIOV support in firmware.

I believe we got the virtual machine's settings wrong.

We set it up as a Q35 machine with Intel virtual IOMMU enabled.

Boss is breathing down our neck and we're getting desperate now.

Can anyone give us a hint? Why would the VF inside the VM be seen while no RX and TX queue be available?

We had the same problem on the host and installing the latest ixgbe and ixgvevf driver solved the issue.

We compiled both DPDK and OVS from source.