"dev" <dev-boun...@openvswitch.org> wrote on 08/11/2016 07:21:39 AM:
> From: Numan Siddique <nusid...@redhat.com> > To: ovs dev <dev@openvswitch.org> > Date: 08/11/2016 07:21 AM > Subject: [ovs-dev] [PATCH v2] ovn-controller: Reset flow processing > after (re)connection to switch > Sent by: "dev" <dev-boun...@openvswitch.org> > > When ovn-controller reconnects to the ovs-vswitchd, it deletes all the > OF flows in the switch. It doesn't install the flows again, leaving > the datapath broken unless ovn-controller is restarted or ovn-northd > updates the SB DB. > > The reason for this is > - lflow_reset_processing() is not called after the reconnection > - the hmap "installed_flows" is not cleared, because of which > ofctrl_put skips adding the flows to the switch. > > This patch fixes the issue and also adds a test case to test > this scenario. > > Signed-off-by: Numan Siddique <nusid...@redhat.com> > --- This all looks does what it promises, so let's get the immediate out of the way: Acked-by: Ryan Moats <rmo...@us.ibm.com> Having said that, I'm still concerned about what happens in the kernel during an ovs-vswitchd restart... I *think* everything will be fine for active connections whose flow rules are still in the kernel, but there will be a momentary loss of connectivity for those connections that require an upcall to access the flows known to vswitchd. If the above is right, then I'm willing to accept that, but it begs two questions: (1) is this something that is too complex for a unit test case? (2) if it isn't too complex, how would one code such a unit test case? _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev