diff options
author | Chirag Shah <chirag@nvidia.com> | 2023-10-10 17:30:55 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-10-10 17:30:55 +0200 |
commit | 0ddda5cd96ab6721929f6896cf87f01d55942193 (patch) | |
tree | 5b4af4ccb8cca4d50324c890c0ad91eb61ee5f51 | |
parent | Merge pull request #14548 from raja-rajasekar/frr_dev1 (diff) | |
parent | zebra: be more careful removing 'installed' flag from nhgs (diff) | |
download | frr-0ddda5cd96ab6721929f6896cf87f01d55942193.tar.xz frr-0ddda5cd96ab6721929f6896cf87f01d55942193.zip |
Merge pull request #14515 from mjstapp/fix_nhg_intf_uninstall
zebra: be more careful removing 'installed' flag from nhgs
-rw-r--r-- | zebra/zebra_nhg.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/zebra/zebra_nhg.c b/zebra/zebra_nhg.c index d1a84491a..396e9acfc 100644 --- a/zebra/zebra_nhg.c +++ b/zebra/zebra_nhg.c @@ -3750,8 +3750,13 @@ void zebra_interface_nhg_reinstall(struct interface *ifp) rb_node_dep->nhe->flags); zebra_nhg_install_kernel(rb_node_dep->nhe); - /* mark depedent uninstall, when interface associated - * singleton is installed, install depedent + /* Don't need to modify dependents if installed */ + if (CHECK_FLAG(rb_node_dep->nhe->flags, + NEXTHOP_GROUP_INSTALLED)) + continue; + + /* mark dependent uninstalled; when interface associated + * singleton is installed, install dependent */ frr_each_safe (nhg_connected_tree, &rb_node_dep->nhe->nhg_dependents, |