[ovs-dev] [sriov] [ixgbevf] We have to down PF and VF port to reconfig a port?

Sam batmanustc at gmail.com
Wed Dec 27 02:42:20 UTC 2017


Hi all,

I'm running OVS-DPDK on a two netdevice server(eth0 and eth1), and I use
sriov to make one VF and one PF on each netdevice, as bellow. Please omit
eth2 and eth3. Then two VF port(enp1s16 and enp1s16f1) combine into linux
bond1 port as management port, two PF port(0000:01:00.0 and 0000:01:00.1)
combine into OVS-DPDK bond port(mode 4) as dataplane port.

[root at yf-mos-test-net14 ~]#
> /usr/local/share/openvswitch/scripts/dpdk_nic_bind --status
> Network devices using DPDK-compatible driver
> ============================================
> 0000:01:00.0 'Ethernet Controller 10-Gigabit X540-AT2' drv=igb_uio
> unused=ixgbe
> 0000:01:00.1 'Ethernet Controller 10-Gigabit X540-AT2' drv=igb_uio
> unused=ixgbe
> Network devices using kernel driver
> ===================================
> 0000:01:10.0 'X540 Ethernet Controller Virtual Function' if=enp1s16
> drv=ixgbevf unused=igb_uio
> 0000:01:10.1 'X540 Ethernet Controller Virtual Function' if=enp1s16f1
> drv=ixgbevf unused=igb_uio
> 0000:08:00.0 'I350 Gigabit Network Connection' if=eth2 drv=igb
> unused=igb_uio
> 0000:08:00.1 'I350 Gigabit Network Connection' if=eth3 drv=igb
> unused=igb_uio
> Other network devices
> =====================
> <none>


I change OVS-DPDK code, and use command to stop  OVS-DPDK bond port and its
slaves, and then change its txconf and rxconf, and then start up them. But
the kernel report "Detected Tx Unit Hang ..." and no packets could go
through OVS-DPDK bond port and linux bond port, but use command to show
OVS-DPDK port and linux bond port, all status is OK.

But when I stop linux bond port first, and then do the same process as
above, no error report and packets could go through OVS-DPDK bond port and
linux bond port.

So what's this problem and how to fix it ? Thank you~


More information about the dev mailing list