[nova] Review guide for PCI tracking for Placement patches

Balazs Gibizer gibi at redhat.com
Tue Aug 9 12:27:34 UTC 2022


Hi,

Top posting as I wanted to give an update on implementation progress of 
the feature. As before I have one main patch series and one additional 
side track providing improvements to PCI DeviceSpec handling that is 
not mandatory for the feature itself.

The main series starts at [5] but it now has a bug fix dependency [6] 
pulled before it.
Now the main series is in a mergable state as it contains the complete 
PCI inventory handling for the feature and this logic can be enabled 
independently from the, yet to be written, scheduling part.

1833394042 Allow enabling PCI tracking in Placement  <-- inventory 
reporting can be enabled by nova.conf
1eabfde2a1 Handle PCI dev reconf with allocations  <-- allocation 
healing works
74dc70ad04 Heal PCI allocation during resize
e1af40959a Heal missing simple PCI allocation in the resource tracker
a520649516 Retry /reshape at provider generation conflict
f7e1ed838f Move provider_tree RP creation to PciResourceProvider  <-- 
inventory reporting works
2d08e28eb3 Stop if tracking is disable after it was enabled before
742bc26da0 Support [pci]device_spec reconfiguration
e445964d59 Reject devname based device_spec config
b796b56622 Ignore PCI devs with physical_network tag
81ba9cf1bf Reject mixed VF rc and trait config
734fa580c3 Reject PCI dependent device config
fd725ce577 Extend device_spec with resource_class and traits
5f4128b188 Basics for PCI Placement reporting
a588df760f Rename whitelist in tests  <-- this is where the side track 
branches out
646e1e69be Rename exception.PciConfigInvalidWhitelist to 
PciConfigInvalidSpec
d26ff3b695 Rename [pci]passthrough_whitelist to device_spec
d275c20bca Add compute restart capability for libvirt func tests
5b3e6c1146 Poison /sys access via various calls in test  <-- main 
series starts
575c15df7a Update RequestSpec.pci_request for resize  <-- bugfix for 
1983753
7b0a1e2b30 Reproducer for bug 1983753


The side track starts at [7] at the middle of the main series.

983dfe69d6 Move __str__ to the PciAddressSpec base class
bc24686626 Fix type annotation of pci.Whitelist class
6941757d06 Remove unused PF checking from get_function_by_ifname
6c7903c11c Clean up mapping input to address spec types
30d7c1eadf Remove dead code from PhysicalPciAddress
af649c184b Fix PciAddressSpec descendants to call super.__init__
238a6174e8 Unparent PciDeviceSpec from PciAddressSpec
6836dba493 Extra tests for remote managed dev spec
5d85ec7829 Add more test coverage for devname base dev spec
a588df760f Rename whitelist in tests  <-- this is the common base with 
the main series

Next I will continue with the last part, the scheduling side, of the 
feature.

Any feedback is highly appreciated.

Cheers,
gibi

[1] 
https://specs.openstack.org/openstack/nova-specs/specs/zed/approved/pci-device-tracking-in-placement.html
[2] https://review.opendev.org/c/openstack/nova-specs/+/791047
[3] 
https://review.opendev.org/q/topic:bp/pci-device-tracking-in-placement
[4] https://review.opendev.org/q/topic:bp/pci-device-spec-cleanup
[5] https://review.opendev.org/c/openstack/nova/+/844627/
[6] https://review.opendev.org/c/openstack/nova/+/852296
[7] https://review.opendev.org/c/openstack/nova/+/844625





More information about the openstack-discuss mailing list