[ovs-dev] [PATCH 0/4] ovn-controller: Separate thread for pinctrl

Han Zhou zhouhan at gmail.com
Fri May 26 00:26:43 UTC 2017


This patch series is the first attempt of ovn-controller multi-threading.
The intention is to avoid flow re-computing being triggered by unrelated
input. An obvious example is that packet-in message from vswitchd to
ovn-controller will trigger full round of flow computing before processing
the actual packet-in message, such as DHCP request. This becomes a
serious problem in large scale environment where each ovn-controller
has large amount of flows to compute and install. It will be even worse
considering in the future we use ovn-controller packet-in for packet
logging.

An alternative approach has been tried but didn't go well, which was
discussed in the link below:

https://mail.openvswitch.org/pipermail/ovs-dev/2017-May/331813.html

Han Zhou (4):
  ovn-controller: decouple localnet_port update from patch_run
  ovn-controller: readonly mode binding_run and get_br_int
  ovn-controller: refactor and abstract ovs_idl registering
  ovn-controller: Use separate thread for packet-in processing.

 ovn/controller/binding.c        |  54 ++++++++++++++++--
 ovn/controller/binding.h        |   2 +-
 ovn/controller/ovn-controller.c | 121 ++++++++++++++++++++++++----------------
 ovn/controller/ovn-controller.h |  33 +++++++++++
 ovn/controller/patch.c          |  30 +---------
 ovn/controller/patch.h          |   2 +-
 ovn/controller/pinctrl.c        |  96 +++++++++++++++++++++++++++++++
 ovn/controller/pinctrl.h        |   1 +
 8 files changed, 257 insertions(+), 82 deletions(-)

-- 
2.1.0



More information about the dev mailing list