[libvirt] cpuset / numa and qemu in TCG mode
tony at bakeyournoodle.com
Mon May 11 00:52:46 UTC 2015
This is with reference to OpenStack (nova) bug 1439280 .
The symptom is when nova(-compute) tries to launch an instance/VM it errors out with:
"libvirtError: Requested operation is not valid: cpu affinity is not supported"
This only happens with using qemu in TCG mode.
After looking at the domain XML and the docs at  It seems to me the problem is either:
1) the libvirt driver in nova is generating valid XML that is an invalid
domain description ; or
2) NUMA support in qemu (TCG) mode is broken.
Exploring these options a little further:
Option 1: the libvirt driver in nova is generating valid XML that is an
invalid domain description
This is the relevant section of the domain XML
<vcpu placement='static' cpuset='0-1'>1</vcpu>
To my reading of  the domain XML should either avoid specifying the 'cpuset'
in the vcpu node ; or include 'emulatorpin' in the cputune node.
Have I understood the documentation correctly? If so it would seem that the
correct fix is in nova to teach the libvirt driver to generate the correct XML
for this virtulisation type.
Option 2: NUMA support in qemu (TCG) mode is broken.
Is cpuset and NUMA architecture expected to work in qemu when running in TCG
mode? If it is then clearly we need to dig into this and fix qemu.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Size: 819 bytes
Desc: not available
More information about the libvir-list