summaryrefslogtreecommitdiff
path: root/pimd/pim_neighbor.c
diff options
context:
space:
mode:
authorDonald Sharp <sharpd@cumulusnetworks.com>2018-03-17 21:13:09 -0400
committerDonald Sharp <sharpd@cumulusnetworks.com>2018-03-17 21:13:09 -0400
commitda11e32521af32b4db39eeb48f2725e9f3db824d (patch)
treeba4ef32067ef07174f15ff4f0883b4a93b4a84a3 /pimd/pim_neighbor.c
parent78c16071f99bf3a5df1800a26656c3362eb0ba48 (diff)
pimd: Make the rpf scan per vrf.
We know the vrf that we are in when we need to initiate a rescan of the rpf cache. So pass it in and use that information. This should help the rescan at scale with several vrf's cutting out a lot of unnecessary work. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Diffstat (limited to 'pimd/pim_neighbor.c')
-rw-r--r--pimd/pim_neighbor.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/pimd/pim_neighbor.c b/pimd/pim_neighbor.c
index 134dbd8712..20a942b4fd 100644
--- a/pimd/pim_neighbor.c
+++ b/pimd/pim_neighbor.c
@@ -545,7 +545,7 @@ pim_neighbor_add(struct interface *ifp, struct in_addr source_addr,
pim_rp_setup(pim_ifp->pim);
- sched_rpf_cache_refresh();
+ sched_rpf_cache_refresh(pim_ifp->pim);
return neigh;
}
@@ -667,7 +667,7 @@ void pim_neighbor_delete(struct interface *ifp, struct pim_neighbor *neigh,
pim_neighbor_free(neigh);
- sched_rpf_cache_refresh();
+ sched_rpf_cache_refresh(pim_ifp->pim);
}
void pim_neighbor_delete_all(struct interface *ifp, const char *delete_message)