mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-08-12 09:52:27 +00:00
zebra: evpn-mh bonds protodown check for set
When we are processing a bond member's protodown we get from the dataplane, check to make sure we haven't already queued up a set. If we have, it's likely this is just a notification we get from the kernel after we set protodown and before we have processed the result in our dplane pthread. This change is needed now that we set protodown via the dplane pthread. Signed-off-by: Stephen Worley <sworley@nvidia.com>
This commit is contained in:
parent
cb5b31f5d0
commit
4b82b95488
@ -872,6 +872,13 @@ static void netlink_proc_dplane_if_protodown(struct zebra_if *zif,
|
|||||||
zif->flags &= ~ZIF_FLAG_PROTODOWN;
|
zif->flags &= ~ZIF_FLAG_PROTODOWN;
|
||||||
|
|
||||||
if (zebra_evpn_is_es_bond_member(zif->ifp)) {
|
if (zebra_evpn_is_es_bond_member(zif->ifp)) {
|
||||||
|
/* Check it's not already being sent to the dplane first */
|
||||||
|
if (protodown && (zif->flags & ZIF_FLAG_SET_PROTODOWN))
|
||||||
|
return;
|
||||||
|
|
||||||
|
if (!protodown && (zif->flags & ZIF_FLAG_UNSET_PROTODOWN))
|
||||||
|
return;
|
||||||
|
|
||||||
if (IS_ZEBRA_DEBUG_EVPN_MH_ES || IS_ZEBRA_DEBUG_KERNEL)
|
if (IS_ZEBRA_DEBUG_EVPN_MH_ES || IS_ZEBRA_DEBUG_KERNEL)
|
||||||
zlog_debug(
|
zlog_debug(
|
||||||
"bond mbr %s re-instate protdown %s in the dplane",
|
"bond mbr %s re-instate protdown %s in the dplane",
|
||||||
|
Loading…
Reference in New Issue
Block a user