summaryrefslogtreecommitdiff
path: root/zebra/interface.c
diff options
context:
space:
mode:
authorDonald Sharp <sharpd@nvidia.com>2021-04-27 07:15:26 -0400
committerDonald Sharp <sharpd@nvidia.com>2021-05-02 07:30:02 -0400
commitc490437e6f3a94b7da80c709e2e4c0bc3b8eee08 (patch)
treea1e126a580dcfd1025e384e35a0818da4458e266 /zebra/interface.c
parent83187b82853d0bf905dacf4de93592f2207c35a6 (diff)
zebra: Allow interface up events to read speed
Initially the reading of the speed of an interface happened upon interface creation and happened until the speed of a link settled down to a single value. The speed of an interface can also change as that a new optic can be inserted that changes the speed, in which case FRR would see a interface down (optic removal) and then a interface up (optic insertion). In this case FRR would not treat this as an event that changed the speed. Let's expand the checking a bit more. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Diffstat (limited to 'zebra/interface.c')
-rw-r--r--zebra/interface.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/zebra/interface.c b/zebra/interface.c
index a3134d6647..e7357cb302 100644
--- a/zebra/interface.c
+++ b/zebra/interface.c
@@ -1074,6 +1074,9 @@ void if_up(struct interface *ifp)
if (zif->flags & ZIF_FLAG_EVPN_MH_UPLINK)
zebra_evpn_mh_uplink_oper_update(zif);
+
+ thread_add_timer(zrouter.master, if_zebra_speed_update, ifp, 0,
+ &zif->speed_update);
}
/* Interface goes down. We have to manage different behavior of based