Public bug reported:
Summary
-------
The list_ip_routes function calls privileged.get_link_devices to fetch all
devices and then filters out just the ones that it actually wants.
Description
-----------
Fetching all devices, particularly in larger network namespaces, is slow. This
seems to be a result of the (de)serialisation of data being sent between the
privileged privsep process and the normal proc.
The list_ip_routes fetches all of these devices from the privileged
process and then filters the result in the unprivileged process.
However, privileged.get_link_devices accepts an argument for the
interface index (RTA_OIF) allowing us to just ask the privileged process
for the device we are actually interested in.
Pre-conditions
--------------
Nothing specific. This function always appears to this.
Step by step reproduction steps
-------------------------------
N/A
Expected output
---------------
The list_ip_routes function completes quickly and only fetches necessary data
from the privsep process.
Actual output
-------------
The list_ip_routes function completes slowly (relatively speaking) and fetches
excessive information from the privsep process, most of which is then discarded.
Version
-------
OpenStack Antelope
** Affects: neutron
Importance: Undecided
Assignee: Adam Oswick (adamoswick)
Status: In Progress
** Changed in: neutron
Assignee: (unassigned) => Adam Oswick (adamoswick)
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/2043564
Title:
list_ip_routes should only fetch needed devices
Status in neutron:
In Progress
Bug description:
Summary
-------
The list_ip_routes function calls privileged.get_link_devices to fetch all
devices and then filters out just the ones that it actually wants.
Description
-----------
Fetching all devices, particularly in larger network namespaces, is slow.
This seems to be a result of the (de)serialisation of data being sent between
the privileged privsep process and the normal proc.
The list_ip_routes fetches all of these devices from the privileged
process and then filters the result in the unprivileged process.
However, privileged.get_link_devices accepts an argument for the
interface index (RTA_OIF) allowing us to just ask the privileged
process for the device we are actually interested in.
Pre-conditions
--------------
Nothing specific. This function always appears to this.
Step by step reproduction steps
-------------------------------
N/A
Expected output
---------------
The list_ip_routes function completes quickly and only fetches necessary data
from the privsep process.
Actual output
-------------
The list_ip_routes function completes slowly (relatively speaking) and
fetches excessive information from the privsep process, most of which is then
discarded.
Version
-------
OpenStack Antelope
To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/2043564/+subscriptions
--
Mailing list: https://launchpad.net/~yahoo-eng-team
Post to : [email protected]
Unsubscribe : https://launchpad.net/~yahoo-eng-team
More help : https://help.launchpad.net/ListHelp