yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #96091
[Bug 2087939] Re: [eventlet-removal] Remove the usage of eventlet in the OVS agent
Reviewed: https://review.opendev.org/c/openstack/neutron/+/937765
Committed: https://opendev.org/openstack/neutron/commit/ad927935ab5868486824c02c478664194e474631
Submitter: "Zuul (22348)"
Branch: master
commit ad927935ab5868486824c02c478664194e474631
Author: Sahid Orentino Ferdjaoui <sahid.ferdjaoui@xxxxxxxxxxxxxxxxxxxxxxxx>
Date: Fri Feb 7 16:56:47 2025 +0100
[eventlet-removal] ovs: remove the usage of eventlet in the OVS agent
This commits remove any usage of greenthreads for OVS Agent.
NOTES:
* The "OSKEN_HUB_TYPE" is set to "native". Once the eventlet removal is
finished and the default backend is "native", this line will be
removed.
* The ``oslo.service`` backend is set to "threading".
Closes-bug: #2087939
Change-Id: I04ac8336db70cf93da43ed17da11c594b441f5eb
Signed-off-by: Sahid Orentino Ferdjaoui <sahid.ferdjaoui@xxxxxxxxxxxxxxxxxxxxxxxx>
** 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/2087939
Title:
[eventlet-removal] Remove the usage of eventlet in the OVS agent
Status in neutron:
Fix Released
Bug description:
References:
* https://etherpad.opendev.org/p/oct2024-ptg-neutron
* https://etherpad.opendev.org/p/neutron-eventlet-deprecation
Remove the import and usage of the eventlet library in the OVS agent.
============================================================
It is spawned using the ``os-ken`` AppManager application loader, that
is based in ``eventlet``.
The OVS agent interacts with th OVS OF rules using ``os-ken``. When
this library is used, it is needed to adapt the main process to run
with it. ``os-ken`` uses a hub of threads; one of them is the main
application (the OVS agent), other thread is the OF status and the
other thread attending the OF commands form the main application. This
library has been only tested with ``eventlet``. The hub is adapted to
accept monkey patched applications (https://github.com/openstack/os-
ken/blob/27601346896b215d270dec647902d028dc97808e/os_ken/lib/hub.py#L29).
It is supposed to work with normal threads but, as commented, that has
never been tested in the Neutron CI.
The native OF library (that uses ``os-ken``), uses
``eventlet.Timeout``:
https://github.com/openstack/neutron/blob/master/neutron/plugins/ml2/drivers/openvswitch/agent/openflow/native/ofswitch.py#L93.
The OVS firewall add a sleep call to yield to other greenthreads:
https://github.com/openstack/neutron/blob/04e9efec78fe308b50f6f1eab8b24f29f3164684/neutron/agent/linux/openvswitch_firewall/firewall.py#L885
To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/2087939/+subscriptions
References