diff options
| author | sharathr <sharathr@cumulusnetworks.com> | 2021-10-08 07:27:50 -0700 | 
|---|---|---|
| committer | Stephen Worley <sworley@nvidia.com> | 2023-02-13 18:12:05 -0500 | 
| commit | 00d30205eff94a0940e895ea0558355b48de0574 (patch) | |
| tree | 20a356254f7a45a682d6bc990b88eae48e4be701 /zebra/zebra_vxlan.h | |
| parent | a885db2f8c52bb583a3692b95171f7c98336b9b1 (diff) | |
zebra: fix for unexpected fdb entry showing up during ifdown/ifup events
Ticket: 2674793
Testing Done:  precommit, evpn-min and evpn-smoke
The problem in this case is whenever we are triggering ifdown
followed by ifup of bridge, we see that remote mac entries
are programmed with vlan-1 in the fdb from zebra and never cleaned up.
bridge has vlan_default_pvid 1 which means any port that gets added
will initially have vlan 1 which then gets deleted by ifupdown2 and
the proper vlan gets added.
The problem lies in zebra where we are not cleaning up the remote
macs during vlan change.
Fix is to uninstall the remote macs and then install them
during vlan change.
Signed-off-by: Stephen Worley <sworley@nvidia.com>
Diffstat (limited to 'zebra/zebra_vxlan.h')
| -rw-r--r-- | zebra/zebra_vxlan.h | 3 | 
1 files changed, 2 insertions, 1 deletions
diff --git a/zebra/zebra_vxlan.h b/zebra/zebra_vxlan.h index c1b53075f9..b33c215c73 100644 --- a/zebra/zebra_vxlan.h +++ b/zebra/zebra_vxlan.h @@ -191,7 +191,8 @@ extern int zebra_vxlan_check_readd_vtep(struct interface *ifp, vni_t vni,  extern int zebra_vxlan_if_up(struct interface *ifp);  extern int zebra_vxlan_if_down(struct interface *ifp);  extern int zebra_vxlan_if_add(struct interface *ifp); -extern int zebra_vxlan_if_update(struct interface *ifp, uint16_t chgflags); +extern int zebra_vxlan_if_update(struct interface *ifp, +				 struct zebra_vxlan_if_update_ctx *ctx);  extern int zebra_vxlan_if_del(struct interface *ifp);  extern int zebra_vxlan_process_vrf_vni_cmd(struct zebra_vrf *zvrf, vni_t vni,  					   char *err, int err_str_sz,  | 
