summaryrefslogtreecommitdiffstats
path: root/pbrd
diff options
context:
space:
mode:
authorDonald Sharp <sharpd@cumulusnetworks.com>2020-09-11 19:05:55 +0200
committerDonald Sharp <sharpd@nvidia.com>2020-09-12 02:04:45 +0200
commit166a132d35db81045c3e7d164325eb636678934d (patch)
tree437346ab12d5158523273b8f342a051a2883163f /pbrd
parentbgpd, lib, pbrd, zebra: Pass by ifname (diff)
downloadfrr-166a132d35db81045c3e7d164325eb636678934d.tar.xz
frr-166a132d35db81045c3e7d164325eb636678934d.zip
pbrd: Ensure rule is installed on interface up
If we are experiencing an interface that is bouncing very fast and the last operation that we experienced was a ifdown we will send rule deletions associated with that interface. If we have not received notification that hte rule was removed *but* we immiedately get another ifup notification when we go to install the rule we are deciding that it's not ready to send down again, as that we still think it is installed. Force the rule installation when we have a interface up event. Ticket: CM-31042 Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Diffstat (limited to 'pbrd')
-rw-r--r--pbrd/pbr_map.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/pbrd/pbr_map.c b/pbrd/pbr_map.c
index d6500af88..fe2778c87 100644
--- a/pbrd/pbr_map.c
+++ b/pbrd/pbr_map.c
@@ -293,7 +293,7 @@ void pbr_map_policy_interface_update(const struct interface *ifp, bool state_up)
for (ALL_LIST_ELEMENTS_RO(pbrm->seqnumbers, node, pbrms))
for (ALL_LIST_ELEMENTS_RO(pbrm->incoming, inode, pmi))
if (pmi->ifp == ifp && pbr_map_interface_is_valid(pmi))
- pbr_send_pbr_map(pbrms, pmi, state_up, false);
+ pbr_send_pbr_map(pbrms, pmi, state_up, true);
}
static void pbrms_vrf_update(struct pbr_map_sequence *pbrms,