[openstack-dev] [nova] [Pci passthrough] bug? -- 'NoneType' object has no attribute 'support_requests'

David Kang dkang at isi.edu
Mon Sep 16 21:07:35 UTC 2013


 Hi,

 I'm testing PCI passthrough features on Havana (single node installation).
I've installed OpenStack on CentOS 6.4 using EPEL.
The pci_passthrough_filter doesn't seem to be able to get the object 'host_state.pci_stats'. 
Is it a bug?

 Thanks,
 David

 Here is the information of the test environment:

1. /etc/nova.conf

pci_alias={"name":"test", "product_id":"7190", "vendor_id":"8086"}
pci_passthrough_whitelist=[{"vendor_id":"8086","product_id":"7190"}]


scheduler_available_filters=nova.scheduler.filters.all_filters
scheduler_available_filters=nova.scheduler.filters.pci_passthrough_filter.PciPassthroughFilter

scheduler_default_filters=RetryFilter,AvailabilityZoneFilter,RamFilter,ComputeFilter,ComputeCapabilitiesFilter,ImagePropertiesFilter,CoreFilter,PciPassthroughFilter

2. flavor

# nova flavor-list --extra-specs
+----+-----------+-----------+------+-----------+------+-------+-------------+-----------+---------------------------------------+
| ID | Name      | Memory_MB | Disk | Ephemeral | Swap | VCPUs | RXTX_Factor | Is_Public | extra_specs                           |
+----+-----------+-----------+------+-----------+------+-------+-------------+-----------+---------------------------------------+
| 1  | m1.tiny   | 512       | 1    | 0         |      | 1     | 1.0         | True      | {u'pci_passthrough:alias': u'test:1'} |


3. RPM information of nova-scheduler:
Name        : openstack-nova-scheduler
Arch        : noarch
Version     : 2013.2
Release     : 0.19.b3.el6
Size        : 2.3 k
Repo        : installed
>From repo   : openstack-havana


4. /var/log/nova/scheduler.log

2013-09-16 17:04:51.259 13088 DEBUG stevedore.extension [-] found extension EntryPoint.parse('file = nova.image.download.file') _load_plugins /usr/lib/python2.6/site-packages/stevedore/extension.py:70
2013-09-16 17:04:51.259 13088 DEBUG stevedore.extension [-] found extension EntryPoint.parse('file = nova.image.download.file') _load_plugins /usr/lib/python2.6/site-packages/stevedore/extension.py:70
2013-09-16 17:04:51.259 13088 WARNING nova.scheduler.utils [req-267b2f38-825f-4609-82ef-6d4164e227b1 8ace6a952a0f4a9d81c435a2c8194fe9 656fecdc92df43c2a047316e5a1e3a24] [instance: 9a7e57e1-8c6f-4a18-94f0-c406aae99f9a] Setting instance to ERROR state.
2013-09-16 17:04:51.398 13088 ERROR nova.openstack.common.rpc.amqp [req-267b2f38-825f-4609-82ef-6d4164e227b1 8ace6a952a0f4a9d81c435a2c8194fe9 656fecdc92df43c2a047316e5a1e3a24] Exception during message handling
2013-09-16 17:04:51.398 13088 TRACE nova.openstack.common.rpc.amqp Traceback (most recent call last):
2013-09-16 17:04:51.398 13088 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.6/site-packages/nova/openstack/common/rpc/amqp.py", line 461, in _process_data
2013-09-16 17:04:51.398 13088 TRACE nova.openstack.common.rpc.amqp     **args)
2013-09-16 17:04:51.398 13088 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.6/site-packages/nova/openstack/common/rpc/dispatcher.py", line 172, in dispatch
2013-09-16 17:04:51.398 13088 TRACE nova.openstack.common.rpc.amqp     result = getattr(proxyobj, method)(ctxt, **kwargs)
2013-09-16 17:04:51.398 13088 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.6/site-packages/nova/scheduler/manager.py", line 160, in run_instance
2013-09-16 17:04:51.398 13088 TRACE nova.openstack.common.rpc.amqp     context, ex, request_spec)
2013-09-16 17:04:51.398 13088 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.6/site-packages/nova/scheduler/manager.py", line 147, in run_instance
2013-09-16 17:04:51.398 13088 TRACE nova.openstack.common.rpc.amqp     legacy_bdm_in_spec)
2013-09-16 17:04:51.398 13088 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.6/site-packages/nova/scheduler/filter_scheduler.py", line 87, in schedule_run_instance
2013-09-16 17:04:51.398 13088 TRACE nova.openstack.common.rpc.amqp     filter_properties, instance_uuids)
2013-09-16 17:04:51.398 13088 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.6/site-packages/nova/scheduler/filter_scheduler.py", line 336, in _schedule
2013-09-16 17:04:51.398 13088 TRACE nova.openstack.common.rpc.amqp     filter_properties, index=num)
2013-09-16 17:04:51.398 13088 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.6/site-packages/nova/scheduler/host_manager.py", line 397, in get_filtered_hosts
2013-09-16 17:04:51.398 13088 TRACE nova.openstack.common.rpc.amqp     hosts, filter_properties, index)
2013-09-16 17:04:51.398 13088 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.6/site-packages/nova/filters.py", line 82, in get_filtered_objects
2013-09-16 17:04:51.398 13088 TRACE nova.openstack.common.rpc.amqp     list_objs = list(objs)
2013-09-16 17:04:51.398 13088 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.6/site-packages/nova/filters.py", line 43, in filter_all
2013-09-16 17:04:51.398 13088 TRACE nova.openstack.common.rpc.amqp     if self._filter_one(obj, filter_properties):
2013-09-16 17:04:51.398 13088 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.6/site-packages/nova/scheduler/filters/__init__.py", line 27, in _filter_one
2013-09-16 17:04:51.398 13088 TRACE nova.openstack.common.rpc.amqp     return self.host_passes(obj, filter_properties)
2013-09-16 17:04:51.398 13088 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.6/site-packages/nova/scheduler/filters/pci_passthrough_filter.py", line 41, in host_passes
2013-09-16 17:04:51.398 13088 TRACE nova.openstack.common.rpc.amqp     return host_state.pci_stats.support_requests(
2013-09-16 17:04:51.398 13088 TRACE nova.openstack.common.rpc.amqp AttributeError: 'NoneType' object has no attribute 'support_requests'




More information about the OpenStack-dev mailing list