On interface deletion - make sure any vlan qinq table is cleared 51/15151/2
authorJohn Lo <loj@cisco.com>
Thu, 4 Oct 2018 20:22:21 +0000 (16:22 -0400)
committerDamjan Marion <dmarion@me.com>
Fri, 5 Oct 2018 06:25:32 +0000 (06:25 +0000)
Change-Id: Ie9bb1cfce2369b448ca55a21b2f8b8bbbb81c59c
Signed-off-by: John Lo <loj@cisco.com>
src/vnet/ethernet/interface.c

index d44a8a8..e0d1295 100644 (file)
@@ -342,6 +342,7 @@ ethernet_delete_interface (vnet_main_t * vnm, u32 hw_if_index)
          if (vlan_table->vlans[idx].qinqs)
            {
              pool_put_index (em->qinq_pool, vlan_table->vlans[idx].qinqs);
+             vlan_table->vlans[idx].qinqs = 0;
            }
        }
       pool_put_index (em->vlan_pool, main_intf->dot1q_vlans);
@@ -355,6 +356,7 @@ ethernet_delete_interface (vnet_main_t * vnm, u32 hw_if_index)
          if (vlan_table->vlans[idx].qinqs)
            {
              pool_put_index (em->qinq_pool, vlan_table->vlans[idx].qinqs);
+             vlan_table->vlans[idx].qinqs = 0;
            }
        }
       pool_put_index (em->vlan_pool, main_intf->dot1ad_vlans);