Hi, I'm trying to test pci device passthrough feature. Havana3 is installed using Packstack on CentOS 6.4. Nova-compute dies right after start with error "NameError: global name '_' is not defined". I'm not sure if it is due to misconfiguration of nova.conf or bug. Any help will be appreciated.
Here is the info: /etc/nova/nova.conf: pci_alias={"name":"test", "product_id":"7190", "vendor_id":"8086", "device_type":"ACCEL"} pci_passthrough_whitelist=[{"vendor_id":"8086","product_id":"7190"}] With that configuration, nova-compute fails with the following log: File "/usr/lib/python2.6/site-packages/nova/openstack/common/rpc/amqp.py", line 461, in _process_data **args) File "/usr/lib/python2.6/site-packages/nova/openstack/common/rpc/dispatcher.py", line 172, in dispatch result = getattr(proxyobj, method)(ctxt, **kwargs) File "/usr/lib/python2.6/site-packages/nova/conductor/manager.py", line 567, in object_action result = getattr(objinst, objmethod)(context, *args, **kwargs) File "/usr/lib/python2.6/site-packages/nova/objects/base.py", line 141, in wrapper return fn(self, ctxt, *args, **kwargs) File "/usr/lib/python2.6/site-packages/nova/objects/pci_device.py", line 242, in save self._from_db_object(context, self, db_pci) NameError: global name '_' is not defined 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup Traceback (most recent call last): 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup File "/usr/lib/python2.6/site-packages/nova/openstack/common/threadgroup.py", line 117, in wait 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup x.wait() 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup File "/usr/lib/python2.6/site-packages/nova/openstack/common/threadgroup.py", line 49, in wait 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup return self.thread.wait() 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup File "/usr/lib/python2.6/site-packages/eventlet/greenthread.py", line 166, in wait 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup return self._exit_event.wait() 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup File "/usr/lib/python2.6/site-packages/eventlet/event.py", line 116, in wait 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup return hubs.get_hub().switch() 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup File "/usr/lib/python2.6/site-packages/eventlet/hubs/hub.py", line 177, in switch 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup return self.greenlet.switch() 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup File "/usr/lib/python2.6/site-packages/eventlet/greenthread.py", line 192, in main 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup result = function(*args, **kwargs) 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup File "/usr/lib/python2.6/site-packages/nova/openstack/common/service.py", line 65, in run_service 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup service.start() 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup File "/usr/lib/python2.6/site-packages/nova/service.py", line 164, in start 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup self.manager.pre_start_hook() 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup File "/usr/lib/python2.6/site-packages/nova/compute/manager.py", line 805, in pre_start_hook 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup self.update_available_resource(nova.context.get_admin_context()) 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup File "/usr/lib/python2.6/site-packages/nova/compute/manager.py", line 4773, in update_available_resource 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup rt.update_available_resource(context) 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup File "/usr/lib/python2.6/site-packages/nova/openstack/common/lockutils.py", line 246, in inner 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup return f(*args, **kwargs) 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup File "/usr/lib/python2.6/site-packages/nova/compute/resource_tracker.py", line 318, in update_available_resource 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup self._sync_compute_node(context, resources) 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup File "/usr/lib/python2.6/site-packages/nova/compute/resource_tracker.py", line 347, in _sync_compute_node 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup self._update(context, resources, prune_stats=True) 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup File "/usr/lib/python2.6/site-packages/nova/compute/resource_tracker.py", line 420, in _update 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup self.pci_tracker.save(context) 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup File "/usr/lib/python2.6/site-packages/nova/pci/pci_manager.py", line 126, in save 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup dev.save(context) 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup File "/usr/lib/python2.6/site-packages/nova/objects/base.py", line 134, in wrapper 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup ctxt, self, fn.__name__, args, kwargs) 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup File "/usr/lib/python2.6/site-packages/nova/conductor/rpcapi.py", line 497, in object_action 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup objmethod=objmethod, args=args, kwargs=kwargs) 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup File "/usr/lib/python2.6/site-packages/nova/rpcclient.py", line 85, in call 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup return self._invoke(self.proxy.call, ctxt, method, **kwargs) 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup File "/usr/lib/python2.6/site-packages/nova/rpcclient.py", line 63, in _invoke 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup return cast_or_call(ctxt, msg, **self.kwargs) 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup File "/usr/lib/python2.6/site-packages/nova/openstack/common/rpc/proxy.py", line 126, in call 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup result = rpc.call(context, real_topic, msg, timeout) 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup File "/usr/lib/python2.6/site-packages/nova/openstack/common/rpc/__init__.py", line 139, in call 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup return _get_impl().call(CONF, context, topic, msg, timeout) 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup File "/usr/lib/python2.6/site-packages/nova/openstack/common/rpc/impl_qpid.py", line 794, in call 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup rpc_amqp.get_connection_pool(conf, Connection)) 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup File "/usr/lib/python2.6/site-packages/nova/openstack/common/rpc/amqp.py", line 574, in call 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup rv = list(rv) 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup File "/usr/lib/python2.6/site-packages/nova/openstack/common/rpc/amqp.py", line 539, in __iter__ 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup raise result 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup NameError: global name '_' is not defined 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup Traceback (most recent call last): 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup File "/usr/lib/python2.6/site-packages/nova/openstack/common/rpc/amqp.py", line 461, in _process_data 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup **args) 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup File "/usr/lib/python2.6/site-packages/nova/openstack/common/rpc/dispatcher.py", line 172, in dispatch 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup result = getattr(proxyobj, method)(ctxt, **kwargs) 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup File "/usr/lib/python2.6/site-packages/nova/conductor/manager.py", line 567, in object_action 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup result = getattr(objinst, objmethod)(context, *args, **kwargs) 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup File "/usr/lib/python2.6/site-packages/nova/objects/base.py", line 141, in wrapper 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup return fn(self, ctxt, *args, **kwargs) 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup File "/usr/lib/python2.6/site-packages/nova/objects/pci_device.py", line 242, in save 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup self._from_db_object(context, self, db_pci) 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup 2013-09-10 12:52:23.774 14749 TRACE nova.openstack.common.threadgroup NameError: global name '_' is not defined Thanks, David -- ---------------------- Dr. Dong-In "David" Kang Computer Scientist USC/ISI _______________________________________________ OpenStack-dev mailing list OpenStack-dev@lists.openstack.org http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev