Thanks Adam for the testing.
I have copy this error and will submit a patch to repair this issue later.
Thanks & Best Regards
Shi, Xiao-Lei (Bruce)
Hewlett-Packard Co., Ltd.
HP Servers Core Platform Software China
Telephone +86 23 65683093
Mobile +86 18696583447
Email xiao-lei.shi(a)hp.com
-----Original Message-----
From: Adam Litke [mailto:alitke@redhat.com]
Sent: Tuesday, April 22, 2014 10:28 PM
To: Shi, Xiao-Lei (Bruce, HP Servers-PSC-CQ)
Cc: devel(a)ovirt.org; Dan Kenigsberg
Subject: [vdsm] NUMA support broken on UMA machines
Hi,
Commit 9d3311320f6fcf190c99068b3f566e2bf9a49d99
"caps: Collect numa information"
bruce <xiao-lei.shi(a)hp.com>
Introduced reporting of numa-related information in the getVdsCaps verb. Unfortunately it
also introduced a bug in machines without NUMA support. On my mini-dell, the getVdsCaps
verb is failing with the following exception:
Thread-13::ERROR::2014-04-21 11:57:09,908::BindingXMLRPC::1068::vds::(wrapper) l ibvirt
error Traceback (most recent call last):
File "/usr/share/vdsm/BindingXMLRPC.py", line 1061, in wrapper
res = f(*args, **kwargs)
File "/usr/share/vdsm/BindingXMLRPC.py", line 388, in getCapabilities
ret = api.getCapabilities()
File "/usr/share/vdsm/API.py", line 1193, in getCapabilities
c = caps.get()
File "/usr/share/vdsm/caps.py", line 458, in get
caps['numaNodes'] = _getNumaTopology()
File "/usr/lib64/python2.7/site-packages/vdsm/utils.py", line 958, in
__call__
value = self.func(*args)
File "/usr/share/vdsm/caps.py", line 189, in _getNumaTopology
memInfo = _getMemoryStatsByNumaCell(int(cellIndex))
File "/usr/share/vdsm/caps.py", line 203, in _getMemoryStatsByNumaCell
return libvirtconnection.get().getMemoryStats(cell, 0)
File "/usr/lib64/python2.7/site-packages/vdsm/libvirtconnection.py", line 92,
in wrapper
ret = f(*args, **kwargs)
File "/usr/lib64/python2.7/site-packages/libvirt.py", line 3405, in
getMemoryStats
if ret is None: raise libvirtError ('virNodeGetMemoryStats() failed',
conn=self)
libvirtError: internal error: NUMA isn't available on this host
I guess we need to catch this error and respond appropriately.
--
Adam Litke