summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDonald Sharp <sharpd@nvidia.com>2022-08-02 21:43:46 +0200
committerDonald Sharp <sharpd@nvidia.com>2022-08-05 13:51:27 +0200
commit34a67a7d1eb1dff6cef5caf8aa85763cc98c31fb (patch)
tree084854188ea470e668855dfbd7fa9042842423e9
parentMerge pull request #11636 from AbhishekNR/clear_cmd (diff)
downloadfrr-34a67a7d1eb1dff6cef5caf8aa85763cc98c31fb.tar.xz
frr-34a67a7d1eb1dff6cef5caf8aa85763cc98c31fb.zip
zebra: When saving nhg for later stop processing
Commit 35729f38fa5713b introduced the idea of holding a nexthop group for a small amount of time before removing it from the system. When this code was introduced the nexthop group entry was saved and a timer started, except instead of stopping processing at that point in time, zebra was continuing on and deleting nexthop group entries that that entry depended on as well. This should not be done until the timer pops. Fixes: #11596 Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Diffstat (limited to '')
-rw-r--r--zebra/zebra_nhg.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/zebra/zebra_nhg.c b/zebra/zebra_nhg.c
index f84616483..bd793ed5d 100644
--- a/zebra/zebra_nhg.c
+++ b/zebra/zebra_nhg.c
@@ -1653,6 +1653,7 @@ void zebra_nhg_decrement_ref(struct nhg_hash_entry *nhe)
SET_FLAG(nhe->flags, NEXTHOP_GROUP_KEEP_AROUND);
thread_add_timer(zrouter.master, zebra_nhg_timer, nhe,
zrouter.nhg_keep, &nhe->timer);
+ return;
}
if (!zebra_nhg_depends_is_empty(nhe))