summaryrefslogtreecommitdiffstats
path: root/pimd/pim_neighbor.c
diff options
context:
space:
mode:
authorDonald Sharp <sharpd@cumulusnetworks.com>2018-03-18 02:13:09 +0100
committerDonald Sharp <sharpd@cumulusnetworks.com>2018-03-18 02:13:09 +0100
commitda11e32521af32b4db39eeb48f2725e9f3db824d (patch)
treeba4ef32067ef07174f15ff4f0883b4a93b4a84a3 /pimd/pim_neighbor.c
parentpimd: Just call the actual function (diff)
downloadfrr-da11e32521af32b4db39eeb48f2725e9f3db824d.tar.xz
frr-da11e32521af32b4db39eeb48f2725e9f3db824d.zip
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 134dbd871..20a942b4f 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)