Comment 7 for bug 1870352

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix merged to neutron (master)

Reviewed: https://review.opendev.org/722254
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=68e5e1b8fe87b0b4938236f8f8570d92ae044e20
Submitter: Zuul
Branch: master

commit 68e5e1b8fe87b0b4938236f8f8570d92ae044e20
Author: Rodolfo Alonso Hernandez <email address hidden>
Date: Thu Apr 23 09:42:44 2020 +0000

    Specify C shared library in Pyroute2 namespace context

    Since [1], it's possible to specify the shared library to be used
    when creating a Pyroute2 namespace context.

    As commented in [2], "privsep" library makes use of eventlet to
    implement multitasking. If the method executed returns the GIL,
    nothing guarantees that the "eventlet" executor will return it
    again to this task. This could lead to timeouts during the
    execution of those methods.

    From https://docs.python.org/3.6/library/ctypes.html#ctypes.PyDLL:
      "Instances of this class behave like CDLL instances, except that
       the Python GIL is not released during the function call, and
       after the function execution the Python error flag is checked."

    [1]https://github.com/svinota/pyroute2/issues/702
    [2]https://review.opendev.org/#/c/717017/

    Change-Id: I6c9f9adba8b4433cc96704bb69dd4e0d4b154ebd
    Related-Bug: #1870352