[dpdk-users] Cannot attach DPDK NIC port to OVS

Vincenzo Maffione vincenzo.maffione at ing.unipi.it
Fri Apr 14 13:04:57 CEST 2017


Hi,
  I would like to attach one of my ixgbe NIC ports to an OpenVSwitch
instance, but I keep getting an unexpected error, see below.

I've successfully bound both my ixgbe NIC ports to DPDK, using VFIO:

# tools/dpdk-devbind.py --status

Network devices using DPDK-compatible driver
============================================
0000:01:00.0 '82599ES 10-Gigabit SFI/SFP+ Network Connection' drv=vfio-pci
unused=ixgbe
0000:01:00.1 '82599ES 10-Gigabit SFI/SFP+ Network Connection' drv=vfio-pci
unused=ixgbe

Network devices using kernel driver
===================================
0000:00:19.0 'Ethernet Connection (2) I218-V' if=eno1 drv=e1000e
unused=vfio-pci
0000:06:00.0 'RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller'
if=enp6s0 drv=r8169 unused=vfio-pci
0000:07:00.0 '82574L Gigabit Network Connection' if=enp7s0 drv=e1000e
unused=vfio-pci

Other network devices
=====================
<none>

Crypto devices using DPDK-compatible driver
===========================================
<none>

Crypto devices using kernel driver
==================================
<none>

Other crypto devices
====================
<none>


Then I created a bridge

# ovs-vsctl add-br obr1 -- set bridge obr1 datapath_type=netdev

But then when trying to add the dpdk NIC:

# ovs-vsctl add-port obr1 dpdk-p0 -- set Interface dpdk-p0 type=dpdk
options:dpdk-devargs=0000:01:00.0

the command fails, and I get this in the log:

ovs-vswitchd[353]: 2017-04-14T10:54:06Z|00026|bridge|WARN|could not open
network device dpdk-p0 (No such device)
ovs-vswitchd[353]: ovs|00026|bridge|WARN|could not open network device
dpdk-p0 (No such device)

Note that I've successfully managed to setup an OVS instance with two DPDK
vhost-user ports (each one assigned to a QEMU VM): this is why I'm
confident my OVS is built and configured correctly to work with DPDK. Also,
DPDK by itself is working as expected, I can use dpdk pktgen.
Moreover, OVS log shows that DPDK is recognized

[...]
ovs|00005|dpdk|INFO|DPDK Enabled, initializing
[...]

Note that I'm carefully following the documentation here
http://docs.openvswitch.org/en/latest/intro/install/dpdk/ and here
http://docs.openvswitch.org/en/latest/howto/dpdk/

More info:

DPDK version: 16.11
OVS version: 2.6.1, configured with --with-dpdk
Host: Archlinux
/proc/cmdline: BOOT_IMAGE=../vmlinuz-linux-vfio
root=UUID=1c777330-3f00-4ab8-8d5d-d4b2b5d860b0 rw intel_iommu=on
hugepages=2048 pci=assign-busses pcie_acs_override=downstream
initrd=../initramfs-linux-vfio.img

Can anybody help? I'm at a loss here.

Thanks,
  Vincenzo


More information about the users mailing list