Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
Cloud:OpenStack:Newton:Staging
openstack-neutron
0001-Skip-setup_port_filters-for-skipped_device...
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File 0001-Skip-setup_port_filters-for-skipped_devices.patch of Package openstack-neutron
From b5fa86838b3cf14a3e11515a16752afa17fb8f8e Mon Sep 17 00:00:00 2001 From: IWAMOTO Toshihiro <iwamoto@valinux.co.jp> Date: Mon, 8 Aug 2016 12:05:10 +0900 Subject: [PATCH] Skip setup_port_filters for skipped_devices If ports are skipped by treat_devices_added_or_updated, let setup_port_filters skip them, too. Change-Id: I63d544d1147d1501ccf4f1055b495d2f5210fbc0 --- .../openvswitch/agent/ovs_neutron_agent.py | 7 ++++--- .../openvswitch/agent/test_ovs_neutron_agent.py | 16 ++++++++++++---- 2 files changed, 16 insertions(+), 7 deletions(-) Index: neutron-9.4.2.dev21/neutron/plugins/ml2/drivers/openvswitch/agent/ovs_neutron_agent.py =================================================================== --- neutron-9.4.2.dev21.orig/neutron/plugins/ml2/drivers/openvswitch/agent/ovs_neutron_agent.py +++ neutron-9.4.2.dev21/neutron/plugins/ml2/drivers/openvswitch/agent/ovs_neutron_agent.py @@ -1630,6 +1630,7 @@ class OVSNeutronAgent(sg_rpc.SecurityGro devices_added_updated = (port_info.get('added', set()) | port_info.get('updated', set())) need_binding_devices = [] + skipped_devices = set() if devices_added_updated: start = time.time() (skipped_devices, need_binding_devices, @@ -1647,12 +1648,12 @@ class OVSNeutronAgent(sg_rpc.SecurityGro 'elapsed': time.time() - start}) # Update the list of current ports storing only those which # have been actually processed. - port_info['current'] = (port_info['current'] - - set(skipped_devices)) + skipped_devices = set(skipped_devices) + port_info['current'] = (port_info['current'] - skipped_devices) # TODO(salv-orlando): Optimize avoiding applying filters # unnecessarily, (eg: when there are no IP address changes) - added_ports = port_info.get('added', set()) + added_ports = port_info.get('added', set()) - skipped_devices self._add_port_tag_info(need_binding_devices) self.sg_agent.setup_port_filters(added_ports, port_info.get('updated', set())) Index: neutron-9.4.2.dev21/neutron/tests/unit/plugins/ml2/drivers/openvswitch/agent/test_ovs_neutron_agent.py =================================================================== --- neutron-9.4.2.dev21.orig/neutron/tests/unit/plugins/ml2/drivers/openvswitch/agent/test_ovs_neutron_agent.py +++ neutron-9.4.2.dev21/neutron/tests/unit/plugins/ml2/drivers/openvswitch/agent/test_ovs_neutron_agent.py @@ -967,9 +967,9 @@ class TestOvsNeutronAgent(object): failed_devices, self.agent.process_network_ports(port_info, False)) setup_port_filters.assert_called_once_with( - port_info.get('added', set()), + added_devices - set(skipped_devices), port_info.get('updated', set())) - devices_added_updated = (port_info.get('added', set()) | + devices_added_updated = (added_devices | port_info.get('updated', set())) if devices_added_updated: device_added_updated.assert_called_once_with( @@ -990,6 +990,12 @@ class TestOvsNeutronAgent(object): 'removed': set(['eth0']), 'added': set(['eth1'])}) + def test_process_network_port_with_skipped_ports(self): + port_info = {'current': set(['tap0', 'tap1']), + 'removed': set(['eth0']), + 'added': set(['eth1', 'eth2'])} + self._test_process_network_ports(port_info, skipped_devices=['eth1']) + def test_process_network_port_with_empty_port(self): self._test_process_network_ports({})
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor