Hello Team,
I have two X710 NICs in the hypervisor and created the VFs on those NICs. PF is managed by the Linux kernel, while the VF is managed by DPDK. I am using the "test-pmd" application to test the bonding functionality, especially ACTIVE-BACKUP mode.
I have created the bond interface and added the slaves in such a way that the one VFs from each of the PF is added to the bond interface. The goal is to achieve uninterrupted traffic flow even when one of the PF is down.
As part of my testing, I made one of the PF admin down using the command "ip link set <interface> down". Even after waiting for a few minutes, the link status is not propagated to the VF, and the link bonding still takes the PF which is down as the primary slave and tries to send the packet out of that interface.
While debugging I found out that the link status of VF is still up. Is this the expected behaviour? As per the link: https://www.intel.in/content/www/in/en/support/articles/000036776/ethernet-products.html it is the expected behaviour. It may work well if the use case is VF-to-VF communication. But if the use case is to communicate to the other system - (Switch/Routers), then this behaviour will break the link bonding functionality, as the peer's interface would be operationally down, once the PF is made admin down.

My use case:  PF is managed by Linux kernel is connected to the external Router, VF is added to the VM, and the DPDK application is supposed to send/read the packet from the VF.

DPDK version used: DPDK-22.11.1
OS: centos-7
Let me know your thoughts.


--
Regards,
Bharath