yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #83534
[Bug 1883671] Re: [SRIOV] When a VF is bound to a VM, Nova can't retrieve the PCI info
Reviewed: https://review.opendev.org/739131
Committed: https://git.openstack.org/cgit/openstack/nova/commit/?id=efc27ff84c3f38fbcbf75b0dc230963c58d093e4
Submitter: Zuul
Branch: master
commit efc27ff84c3f38fbcbf75b0dc230963c58d093e4
Author: Sean Mooney <work@xxxxxxxxxxxxxxx>
Date: Fri Jul 3 15:58:02 2020 +0000
Lookup nic feature by PCI address
In some environments the libvirt nodedev list can become out of sync
with the current MAC address assigned to a netdev, As a result the
nodedev lookup can fail. This results in an uncaught libvirt exception
which breaks the update_available_resource function resultingin an
incorrect resource view in the database.
e.g. libvirt.libvirtError: Node device not found:
no node device with matching name 'net_enp7s0f3v1_ea_60_77_1f_21_50'
This change removes the dependency on the nodedev name when looking up
nic feature flags.
Change-Id: Ibf8dca4bd57b3bddb39955b53cc03564506f5754
Closes-Bug: #1883671
** Changed in: nova
Status: In Progress => Fix Released
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/1883671
Title:
[SRIOV] When a VF is bound to a VM, Nova can't retrieve the PCI info
Status in OpenStack Compute (nova):
Fix Released
Bug description:
Nova periodically updates the available resources per hypervisor [1].
That implies the reporting of the PCI devices [2]->[3].
In [4], a new feature was introduced to read from libvirt the NIC
capabilities (gso, tso, tx, etc.). But when the NIC interface is bound
to the VM and the MAC address is not the one assigned by the driver
(Nova changes the MAC address according to the info provided by
Neutron), libvirt fails reading the non-existing device:
http://paste.openstack.org/show/794799/.
This command should be avoided or at least, if the executing fails,
the exception could be hidden.
[1]https://github.com/openstack/nova/blob/master/nova/compute/manager.py#L9642
[2]https://github.com/openstack/nova/blob/master/nova/virt/libvirt/driver.py#L6980
[3]https://github.com/openstack/nova/blob/master/nova/virt/libvirt/driver.py#L6898
[4]Ia5b6abbbf4e5f762e0df04167c32c6135781d305
To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1883671/+subscriptions
References