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

Shi, Xiao-Lei (Bruce, HP Servers-PSC-CQ) xiao-lei.shi at hp.com
Wed Apr 23 01:11:34 UTC 2014


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 at hp.com

-----Original Message-----
From: Adam Litke [mailto:alitke at redhat.com] 
Sent: Tuesday, April 22, 2014 10:28 PM
To: Shi, Xiao-Lei (Bruce, HP Servers-PSC-CQ)
Cc: devel at ovirt.org; Dan Kenigsberg
Subject: [vdsm] NUMA support broken on UMA machines

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