nova/nova/compute
Balazs Gibizer cd03bbc1c3 Record SRIOV PF MAC in the binding profile
Today Nova updates the mac_address of a direct-physical port to reflect
the MAC address of the physical device the port is bound to. But this
can only be done before the port is bound. However during migration Nova
does not update the MAC when the port is bound to a different physical
device on the destination host.

This patch extends the libvirt virt driver to provide the MAC address of
the PF in the pci_info returned to the resource tracker. This
information will be then persisted in the extra_info field of the
PciDevice object.

Then the port update logic during migration, resize, live
migration, evacuation and unshelve is also extended to record the MAC of
physical device in the port binding profile according to the device on
the destination host.

The related neutron change Ib0638f5db69cb92daf6932890cb89e83cf84f295
uses this info from the binding profile to update the mac_address field
of the port when the binding is activated.

Closes-Bug: #1942329

Change-Id: Iad5e70b43a65c076134e1874cb8e75d1ba214fde
2022-05-03 18:08:50 +02:00
..
monitors Remove six.add_metaclass 2020-08-15 07:45:39 +00:00
__init__.py Remove nova.compute.*API() shims 2019-06-12 16:09:46 +01:00
api.py Enforce resource limits using oslo.limit 2022-02-24 16:21:03 +00:00
build_results.py
claims.py Add autopep8 to tox and pre-commit 2021-11-08 12:37:27 +00:00
flavors.py db: Unify 'nova.db.api', 'nova.db.sqlalchemy.api' 2021-08-09 15:34:40 +01:00
instance_actions.py nova-manage: Introduce volume show, refresh, get_connector commands 2021-08-25 10:26:07 +01:00
instance_list.py db: Unify 'nova.db.api', 'nova.db.sqlalchemy.api' 2021-08-09 15:34:40 +01:00
manager.py Record SRIOV PF MAC in the binding profile 2022-05-03 18:08:50 +02:00
migration_list.py db: Unify 'nova.db.api', 'nova.db.sqlalchemy.api' 2021-08-09 15:34:40 +01:00
multi_cell_list.py Add autopep8 to tox and pre-commit 2021-11-08 12:37:27 +00:00
power_state.py Removed enum duplication from nova.compute 2016-09-02 07:30:44 +00:00
provider_config.py Provider Config File: Coding style and test cases improvement 2020-09-01 01:05:34 +00:00
provider_tree.py Add autopep8 to tox and pre-commit 2021-11-08 12:37:27 +00:00
resource_tracker.py Fix migration with remote-managed ports & add FT 2022-03-04 18:41:48 +03:00
rpcapi.py Update compute rpc version alias for yoga 2022-02-26 15:44:32 +09:00
stats.py Change consecutive build failure limit to a weigher 2018-06-06 15:18:50 -07:00
task_states.py Fix resource tracker updates during instance evacuation 2018-09-12 13:05:29 +03:00
utils.py Enforce resource limits using oslo.limit 2022-02-24 16:21:03 +00:00
vm_states.py Removed enum duplication from nova.compute 2016-09-02 07:30:44 +00:00