Reviewed: https://review.openstack.org/423153 Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=fcde09462da78fdc6e2fc886a164abf6fb60fefe Submitter: Jenkins Branch: master
commit fcde09462da78fdc6e2fc886a164abf6fb60fefe Author: Thomas Morin <thomas.mo...@orange.com> Date: Fri Jan 20 10:50:10 2017 +0100 Fix OVSBridge.delete_flows when called with no args With this change calling delete_flows with no kwargs will (instead of resulting in calling "ovs-ofctl <action> <bridge> -", which does nothing with no flow spec given on stdin) result in calling "ovs-ofctl <action> <bridge>", which will delete all flows. This aligns the behavior of delete_flows with the behavior currently seen by all callers for the same method shadowed by the implementations in OpenFlowSwitchMixin classes. Change-Id: Ic0449acb3a0d4915ce025300d6f3c507a3cd8e48 Closes-Bug: 1658019 ** Changed in: neutron Status: In Progress => Fix Released -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to neutron. https://bugs.launchpad.net/bugs/1658019 Title: ovs_lib.OVSBridge.delete_flows does not delete flows when called with no args Status in neutron: Fix Released Bug description: ovs_lib.OVSBridge.delete_flows does not delete flows when called with no args, because in that case ovs-ofctl is called as "ovs-ofctl del- flows <bridge-name> -" [2] and nothing is provided on stdin, which is not interpreted by ovs-fctl as delete all flows [3]. The issue really is in OVSBridge.do_action_flows [4] and would impact mod_flows as well. This bug is currently silent because there does not seem to be any code calling delete_flows() without arguments on an OVSBridge instance ; existing code uses bridges inheriting from OpenFlowSwitchMixin which shadow the problematic implementation in ovs_lib.OVSBridge. [1] https://github.com/openstack/neutron/blob/master/neutron/agent/common/ovs_lib.py#L310 [2] https://github.com/openstack/neutron/blob/master/neutron/agent/common/ovs_lib.py#L302 [3] http://openvswitch.org/support/dist-docs/ovs-ofctl.8.txt [--bundle] del-flows switch [--bundle] [--strict] del-flows switch [flow] [--bundle] [--strict] del-flows switch - < file Deletes entries from switch's flow table. With only a switch argument, deletes all flows. Otherwise, deletes flow entries that match the specified flows. With --strict, wildcards are not treated as active for matching purposes. [4] https://github.com/openstack/neutron/blob/master/neutron/agent/common/ovs_lib.py#L296 To manage notifications about this bug go to: https://bugs.launchpad.net/neutron/+bug/1658019/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : yahoo-eng-team@lists.launchpad.net Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp