** Also affects: nova/newton
Importance: Undecided
Status: New
** Changed in: nova/newton
Status: New => In Progress
** Changed in: nova/newton
Importance: Undecided => Low
** Changed in: nova/newton
Assignee: (unassigned) => Lee Yarwood (lyarwood)
** Tags added: pci
--
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/1638200
Title:
Failed to boot vm with pci_alias's name including space in nova.conf
Status in OpenStack Compute (nova):
Fix Released
Status in OpenStack Compute (nova) newton series:
In Progress
Bug description:
Description
===========
Failed to boot vm with pci_alias's name including space in nova.conf.
Steps to reproduce
==================
1.modify the key pci_alias, pci_passthrough_whitelist and
scheduler_default_filters in /etc/nova/nova.conf
pci_alias = {"name": "Cirrus Logic", "product_id": "0ff2", "vendor_id":
"10de"}
pci_passthrough_whitelist = [{"product_id": "0ff2", "vendor_id": "10de"}]
scheduler_default_filters = ...,PciPassthroughFilter
2.restart nova-api, nova-scheduler, nova-conductor, nova-compute
serivces
3.update a flavor's metadata with command
nova flavor-key m1.tiny set "pci_passthrough:alias"="Cirrus Logic:1"
4.create instance with command
nova boot --flavor m1.tiny --image cirror --nic net-id=xxxxxxxxx vm_name
Expected result
===============
There will be a vm with gpu passthrough.
Actual result
=============
Failed to boot vm.
Error occurs in nova-api.log
Environment
===========
1. Devstack with newton version
Logs
==============
2016-11-01 12:13:27.523 ^[[01;31mERROR nova.api.openstack.extensions
[^[[01;36mreq-82f58a79-76b9-49e7-a8e9-44e8b43eaea4 ^[[00;36madmin
admin^[[01;31m] ^[[01;35m^[[01;31mUnexpected exception in API method^[[00m
^[[01;31m2016-11-01 12:13:27.523 TRACE nova.api.openstack.extensions
^[[01;35m^[[00mTraceback (most recent call last):
^[[01;31m2016-11-01 12:13:27.523 TRACE nova.api.openstack.extensions
^[[01;35m^[[00m File "/opt/stack/nova/nova/api/openstack/extensions.py", line
478, in wrapped
^[[01;31m2016-11-01 12:13:27.523 TRACE nova.api.openstack.extensions
^[[01;35m^[[00m return f(*args, **kwargs)
^[[01;31m2016-11-01 12:13:27.523 TRACE nova.api.openstack.extensions
^[[01;35m^[[00m File "/opt/stack/nova/nova/api/validation/__init__.py", line
73, in wrapper
^[[01;31m2016-11-01 12:13:27.523 TRACE nova.api.openstack.extensions
^[[01;35m^[[00m return func(*args, **kwargs)
^[[01;31m2016-11-01 12:13:27.523 TRACE nova.api.openstack.extensions
^[[01;35m^[[00m File "/opt/stack/nova/nova/api/validation/__init__.py", line
73, in wrapper
^[[01;31m2016-11-01 12:13:27.523 TRACE nova.api.openstack.extensions
^[[01;35m^[[00m return func(*args, **kwargs)
^[[01;31m2016-11-01 12:13:27.523 TRACE nova.api.openstack.extensions
^[[01;35m^[[00m File "/opt/stack/nova/nova/api/validation/__init__.py", line
73, in wrapper
^[[01;31m2016-11-01 12:13:27.523 TRACE nova.api.openstack.extensions
^[[01;35m^[[00m return func(*args, **kwargs)
^[[01;31m2016-11-01 12:13:27.523 TRACE nova.api.openstack.extensions
^[[01;35m^[[00m File "/opt/stack/nova/nova/api/openstack/compute/servers.py",
line 629, in create
^[[01;31m2016-11-01 12:13:27.523 TRACE nova.api.openstack.extensions
^[[01;35m^[[00m **create_kwargs)
^[[01;31m2016-11-01 12:13:27.523 TRACE nova.api.openstack.extensions
^[[01;35m^[[00m File "/opt/stack/nova/nova/hooks.py", line 154, in inner
^[[01;31m2016-11-01 12:13:27.523 TRACE nova.api.openstack.extensions
^[[01;35m^[[00m rv = f(*args, **kwargs)
^[[01;31m2016-11-01 12:13:27.523 TRACE nova.api.openstack.extensions
^[[01;35m^[[00m File "/opt/stack/nova/nova/compute/api.py", line 1563, in
create
^[[01;31m2016-11-01 12:13:27.523 TRACE nova.api.openstack.extensions
^[[01;35m^[[00m check_server_group_quota=check_server_group_quota)
^[[01;31m2016-11-01 12:13:27.523 TRACE nova.api.openstack.extensions
^[[01;35m^[[00m File "/opt/stack/nova/nova/compute/api.py", line 1146, in
_create_instance
^[[01;31m2016-11-01 12:13:27.523 TRACE nova.api.openstack.extensions
^[[01;35m^[[00m reservation_id, max_count)
^[[01;31m2016-11-01 12:13:27.523 TRACE nova.api.openstack.extensions
^[[01;35m^[[00m File "/opt/stack/nova/nova/compute/api.py", line 871, in
_validate_and_build_base_options
^[[01;31m2016-11-01 12:13:27.523 TRACE nova.api.openstack.extensions
^[[01;35m^[[00m instance_type)
^[[01;31m2016-11-01 12:13:27.523 TRACE nova.api.openstack.extensions
^[[01;35m^[[00m File "/opt/stack/nova/nova/pci/request.py", line 177, in
get_pci_requests_from_flavor
^[[01;31m2016-11-01 12:13:27.523 TRACE nova.api.openstack.extensions
^[[01;35m^[[00m flavor['extra_specs']['pci_passthrough:alias'])
^[[01;31m2016-11-01 12:13:27.523 TRACE nova.api.openstack.extensions
^[[01;35m^[[00m File "/opt/stack/nova/nova/pci/request.py", line 129, in
_translate_alias_to_requests
^[[01;31m2016-11-01 12:13:27.523 TRACE nova.api.openstack.extensions
^[[01;35m^[[00m raise exception.PciRequestAliasNotDefined(alias=name)
^[[01;31m2016-11-01 12:13:27.523 TRACE nova.api.openstack.extensions
^[[01;35m^[[00mPciRequestAliasNotDefined: PCI alias CirrusLogic is not defined
^[[01;31m2016-11-01 12:13:27.523 TRACE nova.api.openstack.extensions
^[[01;35m^[[00m
2016-11-01 12:13:27.527 ^[[00;36mINFO nova.api.openstack.wsgi
[^[[01;36mreq-82f58a79-76b9-49e7-a8e9-44e8b43eaea4 ^[[00;36madmin
admin^[[00;36m] ^[[01;35m^[[00;36mHTTP exception thrown: Unexpected API Error.
Please report this at http://bugs.launchpad.net/nova/ and attach the Nova API
log if possible.<class 'nova.exception.PciRequestAliasNotDefined'>^[[00m
To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1638200/+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