On 12/02/2016 03:11 AM, Wenzhuo Lu wrote:
1, VF Daemon (VFD) VFD is an idea to control all the VFs from PF. As we need to support the scenario kernel PF + DPDK VF, DPDK follows the interface between kernel PF + kernel VF. We don't want to introduce too many new messages between PF and VF. So this patch set adds some new APIs to control VFs directly from PF. The new APIs include, 1) set VF MAC anti-spoofing 2) set VF VLAN anti-spoofing 3) set TX loopback 4) set VF unicast promiscuous mode 5) set VF multicast promiscuous mode 6) set VF MTU 7) get/reset VF stats 8) set VF MAC address 9) set VF VLAN stripping 10) VF VLAN insertion 12) set VF broadcast mode 12) set VF VLAN tag 13) set VF VLAN filter VFD also includes VF to PF mailbox message management by APP. When PF receives mailbox messages from VF, PF should call the callback provided by APP to know if they're permitted to be processed.
The patch series adds i40e-specific API functions for VF control (advertise link status change, MAC anti-spoofing, VLAN anti-spoofing, promiscuous mode, MAC change, VLAN controls), but RTE API is added to get VF stats. I'm wondering why. Corresponding patches do not explain why i40e-specific API is added instead of generic RTE API. IMHO, it is hardly convenient for applications. (I guess it was a discussion and decision, but I've failed to find in the archive). Andrew.