summaryrefslogtreecommitdiffstats
path: root/src/vnet/ethernet/interface.c
diff options
context:
space:
mode:
authorSteve Shin <jonshin@cisco.com>2018-02-20 11:38:34 -0800
committerDamjan Marion <dmarion.lists@gmail.com>2018-02-20 21:40:59 +0000
commit8a3e575dfca22500744df76c40de600d8aa61e12 (patch)
treea16342e6ddc56f09a0476c3fde11e7070c4521be /src/vnet/ethernet/interface.c
parentf3ab4896ed13733a22e9637395973fc1808823e1 (diff)
Fix reset the vlan flags when main interface is deleted.
The dot1q_vlans & dot1ad_vlans should be reset to 0 when main interface is deleted. Otherwise, VPP will crash if the same interface index is reused without attaching the sub interface on it. Change-Id: I484d4a8892ff4241a3a32b22189746193d5f2594 Signed-off-by: Steve Shin <jonshin@cisco.com>
Diffstat (limited to 'src/vnet/ethernet/interface.c')
-rw-r--r--src/vnet/ethernet/interface.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/vnet/ethernet/interface.c b/src/vnet/ethernet/interface.c
index 801c99f824d..091ca2977ee 100644
--- a/src/vnet/ethernet/interface.c
+++ b/src/vnet/ethernet/interface.c
@@ -344,6 +344,7 @@ ethernet_delete_interface (vnet_main_t * vnm, u32 hw_if_index)
}
}
pool_put_index (em->vlan_pool, main_intf->dot1q_vlans);
+ main_intf->dot1q_vlans = 0;
}
if (main_intf->dot1ad_vlans)
{
@@ -356,6 +357,7 @@ ethernet_delete_interface (vnet_main_t * vnm, u32 hw_if_index)
}
}
pool_put_index (em->vlan_pool, main_intf->dot1ad_vlans);
+ main_intf->dot1ad_vlans = 0;
}
vnet_delete_hw_interface (vnm, hw_if_index);