This change handles a corner case where local mac entries are not cleared if a
vlan binding is deleted while the emulator is not running.  The fix is to clean
up the local mac entries once on restart.

Reported-by: Hsin-Yi Shen <sh...@vmware.com>
Signed-off-by: Anupam Chanda <acha...@vmware.com>
---
 AUTHORS       |    1 +
 vtep/ovs-vtep |    7 +++++++
 2 files changed, 8 insertions(+)

diff --git a/AUTHORS b/AUTHORS
index c5c9d51..5a3e826 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -295,6 +295,7 @@ Hemanth Kumar Mantri    man...@nutanix.com
 Henrik Amren            hen...@nicira.com
 Hiroshi Tanaka          htan...@nicira.com
 Hiroshi Miyata          miyahiro.d...@gmail.com
+Hsin-Yi Shen            sh...@vmware.com
 Hyojoon Kim             jo...@gatech.edu
 Ian Stokes              ian.sto...@intel.com
 Igor Ganichev           iganic...@nicira.com
diff --git a/vtep/ovs-vtep b/vtep/ovs-vtep
index 46a5692..3244520 100755
--- a/vtep/ovs-vtep
+++ b/vtep/ovs-vtep
@@ -651,6 +651,13 @@ def setup():
     else:
         ovs_vsctl("add-br %s" % bfd_bridge)
 
+    # Remove local-mac entries from the previous run.  Otherwise, if a vlan
+    # binding is removed while the emulator is *not* running, the corresponding
+    # local-mac entries are never cleaned up.
+    vtep_ls = set(vtep_ctl("list-ls").split())
+    for ls_name in vtep_ls:
+        vtep_ctl("clear-local-macs %s" % ls_name)
+
 
 def main():
     parser = argparse.ArgumentParser()
-- 
1.7.9.5

_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to