In case virtual instances are attached to an external network via veth and a bridge, the interface to the external network can be a bond interface. Bonding drivers generate specific events during failover that trigger switch updates. When a veth device is attached to a bridge with a bond interface, we want external switches to learn about the veth devices as well. Without this patch we have seen cases where recovery after bond failover took an unacceptable amount of time (depending on timeout settings in the network). Due to the symmetric nature of veth special care is required to avoid endless notification loops. Therefore we only notify from a veth bridgeport to a peer that is not a bridgeport. References: Same handling as for macvlan: 4c9912556867 ("macvlan: Support bonding events" and vlan: 4aa5dee4d999 ("net: convert resend IGMP to notifier event") Alternatives: Propagate notifier events to all ports of a bridge. IIUC, this was rejected in https://www.spinics.net/lists/netdev/msg717292.html It also seems difficult to avoid re-bouncing the notifier. Alexandra Winter (1): veth: Support bonding events drivers/net/veth.c | 53 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) -- 2.32.0