[libvirt] memory pinning problem

Daniel P. Berrange berrange at redhat.com
Wed Sep 11 10:27:30 UTC 2013


On Wed, Sep 11, 2013 at 10:47:08AM +0200, David Weber wrote:
> Am Freitag, 6. September 2013, 12:10:04 schrieb Daniel P. Berrange:
> > On Tue, Aug 27, 2013 at 09:09:25AM +0200, David Weber wrote:
> > > 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
> 
> # virsh freecell 0
> 0: 86071624 KiB
> 
> # virsh freecell 1
> 1: 75258628 KiB
> 
> # virsh edit test
> <domain type='kvm'>
>   <name>test</name>
>   <uuid>08cdc389-78bf-450c-89f4-b4728edabdbf</uuid>
>   <memory unit='KiB'>1048576</memory>
>   <currentMemory unit='KiB'>1048576</currentMemory>
>   <vcpu placement='static' cpuset='4-7'>1</vcpu>
>   <numatune>
>     <memory mode='strict' nodeset='1'/>
>   </numatune>
>   <os>
>     <type arch='x86_64' machine='pc-i440fx-1.5'>hvm</type>
>     <boot dev='hd'/>
>   </os>
>   <features>
>     <acpi/>
>     <apic/>
>     <pae/>
>   </features>
>   <clock offset='utc'/>
>   <on_poweroff>destroy</on_poweroff>
>   <on_reboot>restart</on_reboot>
>   <on_crash>restart</on_crash>
>   <devices>
>     <emulator>/usr/bin/qemu-kvm</emulator>
>     <controller type='usb' index='0'>
>       <address type='pci' domain='0x0000' bus='0x00' slot='0x01' 
> function='0x2'/>
>     </controller>
>     <controller type='pci' index='0' model='pci-root'/>
>     <controller type='ide' index='0'>
>       <address type='pci' domain='0x0000' bus='0x00' slot='0x01' 
> function='0x1'/>
>     </controller>
>     <input type='mouse' bus='ps2'/>
>     <graphics type='vnc' port='-1' autoport='yes'/>
>     <video>
>       <model type='cirrus' vram='9216' heads='1'/>
>       <address type='pci' domain='0x0000' bus='0x00' slot='0x02' 
> function='0x0'/>
>     </video>
>     <memballoon model='virtio'>
>       <address type='pci' domain='0x0000' bus='0x00' slot='0x03' 
> function='0x0'/>
>     </memballoon>
>   </devices>
> </domain>
> 
>  # virsh start test
> error: Failed to start domain test
> error: internal error: process exited while connecting to monitor: 
> kvm_init_vcpu failed: Cannot allocate memory
> 
> Allocating memory on this node with numactl  works fine
> # numactl --cpubind=1 --membind=1 --  dd if=/dev/zero of=/dev/null bs=2G 
> count=1
> 0+1 records in
> 0+1 records out
> 2147479552 bytes (2.1 GB) copied, 0.60816 s, 3.5 GB/s

Hmm, this makes no sense at all to me. Your configuration looks totally
valid and you have plenty of memory in both nodes.


Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|




More information about the libvir-list mailing list