summaryrefslogtreecommitdiff
path: root/zebra/interface.c
diff options
context:
space:
mode:
authorDonald Sharp <sharpd@nvidia.com>2024-02-08 12:22:09 -0500
committerDonald Sharp <sharpd@nvidia.com>2024-02-08 12:22:09 -0500
commite28162b215395a05e49eb083c89b4dc65dbf9808 (patch)
tree8a49a59ef4295428e72e13b575dbab93d656db64 /zebra/interface.c
parentfbce9231d1f70f922ee854205f8c696c4658f56f (diff)
zebra: Move nhg reinstallation into if_up proper
The function call in to zebra_interface_nhg_reinstall is an action that takes place on interface up events *not* when the connected addresses are added to a system. this will prevent this function being called when new connected interfaces come alive that is an independent operation of the interface coming up. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Diffstat (limited to 'zebra/interface.c')
-rw-r--r--zebra/interface.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/zebra/interface.c b/zebra/interface.c
index d3ea185338..8111863558 100644
--- a/zebra/interface.c
+++ b/zebra/interface.c
@@ -970,6 +970,14 @@ void if_up(struct interface *ifp, bool install_connected)
if (install_connected)
if_install_connected(ifp);
+ /*
+ * Interface associated NHG's have been deleted on
+ * interface down events, now that this interface
+ * is coming back up, let's resync the zebra -> dplane
+ * nhg's so that they can be continued to be used.
+ */
+ zebra_interface_nhg_reinstall(ifp);
+
/* Handle interface up for specific types for EVPN. Non-VxLAN interfaces
* are checked to see if (remote) neighbor entries need to be installed
* on them for ARP suppression.