[ovirt-devel] [vdsm] NUMA support broken on UMA machines

Adam Litke alitke at redhat.com
Tue Apr 22 14:27:49 UTC 2014


Hi,

Commit 9d3311320f6fcf190c99068b3f566e2bf9a49d99
"caps: Collect numa information"
bruce <xiao-lei.shi at 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



More information about the Devel mailing list