diff options
| author | Rajesh Varatharaj <rvaratharaj@nvidia.com> | 2024-02-07 18:58:39 -0800 | 
|---|---|---|
| committer | Rajesh Varatharaj <rvaratharaj@nvidia.com> | 2024-02-08 10:37:31 -0800 | 
| commit | 071d43a052e04de52771b2f03461c407f0ced36f (patch) | |
| tree | 1d69a82831627e071844964c5f4a1b1d1d6a6e4b /pimd/pim_mroute.c | |
| parent | 7fe05d6185d6c5846ef56eb767aef77b5629dff5 (diff) | |
pimd: re-evaluated S,G OILs upon RP changes and for empty SG upstream oils
Topology:
TOR11 (FHR) --- LEAF-11---SPINE1 (RP)MSDP SPINE-2(RP)MSDP --- LEAF-12 -- TOR12 (LHR)
        |         |                    |				|       |
	|         -----------------------------------------------------(ECMP)   |
	|         |		                                |               |
	 -----------------------------------------------------------------------(ECMP)
Issue:
In some triggers, S,G upstream is preserved even with the PP timer expiry, resulting
in S,G with NULL OILS. This could be because we create a dummy S,G upstream and
dummy channel_oif for *,G, where RPF is UNKNOWN. As a result, PIM+VXLAN traffic is never
forwarded downstream to LHR.
Fix:
when the S,G stream is running, Determine if a reevaluation of the outgoing interface
 list (OIL) is required. S,G upstream should then inherit the OIL from *,G.
Testing:
- Evpn pim tests - TestEvpnPimSingleVtepOneMdt.test_02_broadcast_traffic_spt_zero
- pim-smoke
Ticket: #
Signed-off-by: Rajesh Varatharaj <rvaratharaj@nvidia.com>
Diffstat (limited to 'pimd/pim_mroute.c')
| -rw-r--r-- | pimd/pim_mroute.c | 2 | 
1 files changed, 1 insertions, 1 deletions
diff --git a/pimd/pim_mroute.c b/pimd/pim_mroute.c index e00888acf3..c63e0f35d4 100644 --- a/pimd/pim_mroute.c +++ b/pimd/pim_mroute.c @@ -1219,7 +1219,7 @@ int pim_upstream_mroute_add(struct channel_oil *c_oil, const char *name)  	return pim_upstream_mroute_update(c_oil, name);  } -/* Look for IIF changes and update the dateplane entry only if the IIF +/* Look for IIF changes and update the dataplane entry only if the IIF   * has changed.   */  int pim_upstream_mroute_iif_update(struct channel_oil *c_oil, const char *name)  | 
