[dpdk-users] i40e virtual function doesn't work on virtual machine

Dirk-Holger Lenz dirk.lenz at ng4t.com
Fri Aug 4 14:47:16 CEST 2017


when for a virtual function running on a virtual machine

rte_eth_dev_start() is called the dpdk returns an error

and logs the following error messages:

i40evf_execute_vf_cmd(): No response for 6
i40evf_configure_vsi_queues(): Failed to execute command of 
VIRTCHNL_OP_CONFIG_VSI_QUEUES
i40evf_dev_start(): configure queues failed

short time before it logged:

i40evf_execute_vf_cmd(): No response for 28
i40evf_disable_vlan_strip(): Failed to execute command of 
VIRTCHNL_OP_DISABLE_VLAN_STRIPPING

But this correlates to the log on the host:

Aug  4 14:09:43 ng40x kernel: [12176.208968] i40e 0000:82:00.1: Invalid 
message from VF 0, opcode 28, len 0
Aug  4 14:09:48 ng40x kernel: [12181.414724] i40e 0000:82:00.1: Invalid 
message from VF 1, opcode 28, len 0

The host is running Ubuntu linux with kernel 4.8.0-45-lowlatency.

The primary function of the i40e is driven by the linux kernel driver and

16 virtual functions are created.

The virtual machine is running Ubuntu linux with kernel 
4.8.0-45-lowlatency as well.

It is used dpdk 17.08rc4.


When a similar scenario is used on the host directly using virtual 
functions as well,

the dpdk logs the VIRTCHNL_OP_DISABLE_VLAN_STRIPPING problem but not the

VIRTCHNL_OP_CONFIG_VSI_QUEUES problem and it works fine.


When I hardly make the i40evf_execute_vf_cmd() function return 0 the virtual

function starts and is able to transmit and receive packets at high rate.

Here are the logs which are given in this case:

i40evf_execute_vf_cmd(): No response for 28
i40evf_execute_vf_cmd(): No response for 6
i40evf_execute_vf_cmd(): No response for 7
i40evf_execute_vf_cmd(): No response for 10
i40evf_execute_vf_cmd(): No response for 8
i40evf_execute_vf_cmd(): No response for 8
i40evf_execute_vf_cmd(): No response for 14

note: we are using a regression test scenario which was running every 
night. the last

good run we had Wednesday with dpdk 17.05. Then we switched to 17.08rc3/rc4.




More information about the users mailing list