Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
if-status: Add OVS interface status management module.
The initial implementation of the notification mechanism that indicates if OVS flows corresponding to a logical switch port have been installed is not resilient enough. It didn't cover the case when transactions to the local OVS DB or to the Southbound fail. In order to deal with that, factor out the code that tracks the state of the interfaces to a new module, 'if-status', and implement it with a state machine that will retry setting Port_Binding.UP and OVS.Interface.external_ids:ovn-installed in the Southbound and local OVS databases. Having a separate module makes sense because tracking the interface state doesn't really depend on the rest of the binding module, except for interacting with the Port_Binding and Interface IDL records. For this we add some additional APIs to binding.c. Reported-at: https://bugzilla.redhat.com/1952846 Fixes: 4d3cb42 ("binding: Set Logical_Switch_Port.up when all OVS flows are installed.") Signed-off-by: Dumitru Ceara <dceara@redhat.com> Signed-off-by: Numan Siddique <numans@ovn.org> Acked-by: Mark Michelson <mmichels@redhat.com>
- Loading branch information