[dpdk-dev] DPDK failed to handle intialize VF
cheng.luo.nq at hitachi.com
cheng.luo.nq at hitachi.com
Tue Nov 12 08:12:16 CET 2013
Hi,
I am using DPDK for SRIOV.
I have one Intel X520 with two PFs.
After binding the two PFs to igb_uio, I create two VFs and assign
them to a virtual machine.
I found that to wake up VF, the VF will send some message to PF
such as IXGBE_VF_SET_MACVLAN(0x06) and IXGBE_VF_API_NEGOTIATE(0x08)
for the initialization.
However, DPDK's PMD driver does not handle this messgae.
In the source code /lib/librte_pmd_ixgbe/ixgbe_pf.c
the function ixgbe_rcv_msg_from_vf only handle the following message:
IXGBE_VF_SET_MAC_ADDR (0x02)
IXGBE_VF_SET_MULTICAST (0x03)
IXGBE_VF_SET_LPE (0x04)
IXGBE_VF_SET_VLAN (0x05)
and take other message as error message and take no operation.
Therefore, if take DPDK to control the PF, I can not use VF with
ixgbevf driver in the VMs.
The PMD driver will endless print error message as follow:
-------------
PMD: Unhandled Msg 00000006
PMD: Unhandled Msg 00000008
-----------
And in the VMs, it also prints endless error message
---------------------
[ 447.339765] ixgbevf: eth1: ixgbevf_watchdog_task: NIC Link is Up, 10 Gbps
[ 447.748556] ixgbevf: eth1: ixgbevf_watchdog_task: NIC Link is Up, 10 Gbps
[ 447.844914] ixgbevf: eth1: ixgbevf_watchdog_task: NIC Link is Up, 10 Gbps
--------------------
While I also read the code in ixgbe, and found that it can handle message 0x06 and 0x08.
Is this a bug for DPDK ?
Or any step is wrong for my configuration?
I think DPDK should be ok to run in the host while with VF in the VM uses normal driver such as ixgbevf.
More information about the dev
mailing list