[openstack-dev] [nova] We should fail to boot a server if PF passthrough is requested and we don't honor it, right?

Matt Riedemann mriedemos at gmail.com
Wed Oct 3 16:28:29 UTC 2018


I came across [1] today while triaging a bug [2]. Unless I'm mistaken, 
the user has requested SR-IOV PF passthrough for their server and for 
whatever reason we can't find the PCI device for the PF passthrough port 
so we don't reflect the actual device MAC address on the port. Is that 
worth stopping the server create? Or is logging an ERROR enough here?

The reason being we get an IndexError here [3]. Ultimately if we found a 
PCI device but it's not whitelisted, we'll raise an exception anyway 
when building the port binding profile [4].

So is it reasonable to just raise PciDeviceNotFound whenever we can't 
find a PCI device on a compute host given a pci_request_id? In other 
words, it seems something failed earlier during scheduling and/or the 
PCI device resource claim if we get this far and things are still messed up.

[1] 
https://github.com/openstack/nova/blob/237ced4737a28728408eb30c3d20c6b2c13b4a8d/nova/network/neutronv2/api.py#L1426
[2] https://bugs.launchpad.net/nova/+bug/1795064
[3] 
https://github.com/openstack/nova/blob/237ced4737a28728408eb30c3d20c6b2c13b4a8d/nova/network/neutronv2/api.py#L1404
[4] 
https://github.com/openstack/nova/blob/237ced4737a28728408eb30c3d20c6b2c13b4a8d/nova/network/neutronv2/api.py#L1393

-- 

Thanks,

Matt



More information about the OpenStack-dev mailing list