[libvirt] memory pinning problem

David Weber wb at munzinger.de
Tue Aug 27 07:09:25 UTC 2013


Hi,

we try to use vcpu pinning on a 2 socket server with Intel Xeon E5620 cpus, HT 
enabled and 2*6*16GiB Ram but experience problems if we try to start a guest 
on the second socket:
error: Failed to start domain test
error: internal error: process exited while connecting to monitor: 
kvm_init_vcpu failed: Cannot allocate memory

Libvirt version 1.1.1 
Linux 3.11-rc7

Because I coudn't find any other service which allowed a 7M file upload, I put 
the log file and everything else which could perhabs be relevant into a github 
repository:
https://github.com/David-Weber/vcpu-pinning

When we try to start a guest on the first node it runs fine:
  <vcpu placement='static' cpuset='0-3,8-11'>4</vcpu>
  <numatune>
    <memory mode='strict' nodeset='0'/>
  </numatune>

Starting it on the second node fails
  <vcpu placement='static' cpuset='4-7,12-15'>4</vcpu>
  <numatune>
    <memory mode='strict' nodeset='1'/>
  </numatune>

Even more strange, starting it with the CPUs of the second node and the memory 
of the first node works:
  <vcpu placement='static' cpuset='4-7,12-15'>4</vcpu>
  <numatune>
    <memory mode='strict' nodeset='0'/>
  </numatune>

The log file contains these three cases.

Using the placement='auto' parameter leads to the same problem. If numad 
return the second node, the guest won't start.

Is this a configuration, a libvirt or a cgroup problem? :)

Cheers,
David




More information about the libvir-list mailing list