Reviewed: https://review.opendev.org/c/openstack/nova/+/951129 Committed: https://opendev.org/openstack/nova/commit/acc6221660d5113314c66361cace9e3982fa76bf Submitter: "Zuul (22348)" Branch: master
commit acc6221660d5113314c66361cace9e3982fa76bf Author: Balazs Gibizer <[email protected]> Date: Wed May 28 14:32:54 2025 +0200 Validated that PCI alias has proper ids Either the vendor_id and product_id needs to be set or the resource_class needs to be set in each alias. This is now validated when the alias is parsed to avoid late failure during placement allocation_candidates query. Closes-Bug: #2111440 Change-Id: I7fd43b3d6faac8c4098b0983e8adc596414823a1 ** 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/2111440 Title: PCI in Placement logs an Invalid resource class error if neither resource class nor vendor_id product_id is provided in the PCI alias config Status in OpenStack Compute (nova): Fix Released Bug description: May 21 15:45:11 jammy nova-scheduler[18697]: ERROR nova.scheduler.client.report [None req-45416b86-0807-4fc6-92f4-ce84e7c209d3 demo demo] Failed to retrieve allocation candidates from placement API for filters: RequestGroup(aggregates=[],forbidden_aggregates=set([]),forbidden_traits=set([]),in_tree=None,provider_uuids=[],requester_id='c75d7e16-b840-4b35-b327-7dea81b3736e-0',required_traits=set(['CUSTOM_NVME256G']),resources={CUSTOM_PCI_NONE_NONE=1},use_same_provider=True), RequestGroup(aggregates=[],forbidden_aggregates=set([]),forbidden_traits=set([]),in_tree=None,provider_uuids=[],requester_id=None,required_traits=set([]),resources={DISK_GB=1,MEMORY_MB=256,VCPU=1},use_same_provider=False) May 21 15:45:11 jammy nova-scheduler[18697]: Got 400: {"errors": [{"status": 400, "title": "Bad Request", "detail": "The server could not comply with the request since it is either malformed or otherwise incorrect.\n\n Invalid resource class in resources parameter: No such resource class CUSTOM_PCI_NONE_NONE. ", "code": "placement.undefined_code", "request_id": "req-aca3ba2f-cf91-41de-965d-8b37468614c3"}]}. nova conf: [pci] alias = { "name": "nic-foo", "traits": "foo"} While it is correct that nova fails the scheduling. It should fail with a meaningful log message. Also we should think about pre-validating the pci alias config at service startup instead of only loading and verifying them when a VM is requesting them. To manage notifications about this bug go to: https://bugs.launchpad.net/nova/+bug/2111440/+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

