This patch reverts . The code wasn't accounting for VLAN provider networks, as stated in the bug #1842988, DVR won't work if the provider network (where the FIP is created) is VLAN. There was also an incosistency in how the external_mac was set for the VLAN networks. Upon creating the FIP the code was checking for the network type and not setting the external_mac attribute in case the network was VLAN type. But, if the port went down and up again (e.g if you reboot the VM) the event handler that set/unset the external_mac  wasn't check for the type. This is how people worked around the DVR problem (as stated in bug #1842988). For more information see bug #1842988. 
networking-ovn - OpenStack Neutron integration with OVN
OVN provides virtual networking for Open vSwitch and is a component of the Open vSwitch project. This project provides integration between OpenStack Neutron and OVN.
- Free software: Apache license
- Source: https://git.openstack.org/cgit/openstack/networking-ovn
- Bugs: https://bugs.launchpad.net/networking-ovn
- Mailing list: https://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
- IRC: #openstack-neutron-ovn on Freenode.
- Docs: https://docs.openstack.org/networking-ovn/latest
Team and repository tags
- Release notes for the project can be found at: https://docs.openstack.org/releasenotes/networking-ovn/