[dpdk-dev] sriov on fm10k card
ShahamF at Radware.com
Mon Nov 28 12:01:31 CET 2016
I have an fm10k card with dual 100G ports, I am running a DPDK application that binds 2 virtual functions to it. I have trouble receiving traffic in my vnfs on fm10k VFs.
1. From rdif debugging I see that it doesn't add the port of the VF in the switching table.
2. Running l2fwd in the same vm 1. Doesn't occur. (the port info and mac is added properly to the switch manager and the traffic works.)
3. Port initialization code in my application and in l2fwd have been compared and equalized.
4. The entry for the port is added in the rdif when we call the function fm10k_update_uc_addr(hw, hw->mac.dglort_map, data->mac_addrs[mac_index].addr_bytes,vlan_id, on, 0);
In my application this function is called too, but I noticed that the values of hw->mac.dglort_map are different.
In l2fwd it's updated with FM10K_DGLORTMAP_ZERO, in function that handles a msg from PF: fm10k_msg_lport_state_vf (according to documentation, this handler is meant to capture the indication from the PF that we are ready to bring up the interface).
In the case of my app this handler is never called. For some reason the PF does not send this message and I suspect this could be the reason why the VF mac entry is not learned in the Switch.
Any hint/ ideas of what I could be missing?
More information about the dev