** Description changed:

+ =============================================
+ SRU Justification
+ 1. Impact: VMs fail to launch with TCG (non-kvm-accelerated)
+ 2. Stable fix: cherrypick a patch from upstream.
+ 3. Regression potential: this only slightly relaxes the check for multiple 
cpus, and is a cherrpyick from upstream.  It therefore should not introduce any 
regressions.
+ 4. Test case: See below - or simply attempt to launch a VM with multiple cpus 
on non-accelerated qemu.
+ =============================================
+ 
  I'm testing the Kilo packages from the cloud archive staging PPA on
  14.04 and cannot launch a VM due to a Libvirt CPU affinity error. I'm
  using QEMU because my environment resides on cloud servers.
  
  Package versions:
  
  ii  nova-common                         1:2015.1~b3-0ubuntu1~cloud0           
all          OpenStack Compute - common files
  ii  nova-compute                        1:2015.1~b3-0ubuntu1~cloud0           
all          OpenStack Compute - compute node base
  ii  nova-compute-kvm                    1:2015.1~b3-0ubuntu1~cloud0           
all          OpenStack Compute - compute node (KVM)
  ii  nova-compute-libvirt                1:2015.1~b3-0ubuntu1~cloud0           
all          OpenStack Compute - compute node libvirt support
  ii  python-nova                         1:2015.1~b3-0ubuntu1~cloud0           
all          OpenStack Compute Python libraries
  ii  python-novaclient                   1:2.22.0-0ubuntu1~cloud0              
all          client library for OpenStack Compute API
  ii  libvirt-bin                         1.2.12-0ubuntu8~cloud0                
amd64        programs for the libvirt library
  ii  libvirt0                            1.2.12-0ubuntu8~cloud0                
amd64        library for interfacing with different virtualization systems
  
  Content of nova compute logs while attempting to launch an
  CirrOS/m1.tiny instance :
  
  2015-03-31 23:00:07.106 31118 INFO nova.compute.manager 
[req-88539061-8d37-45a9-8edb-edd12f199d07 f214e083aa91455e8437996c2dfe815b 
337052ec76e54c42ae891843a1451ca6 - - -] [instance: 
0551a285-e0ba-4f67-b562-04a6eef5db63] Starting instance...
  2015-03-31 23:00:07.180 31118 INFO nova.compute.claims [-] [instance: 
0551a285-e0ba-4f67-b562-04a6eef5db63] Attempting claim: memory 512 MB, disk 1 GB
  2015-03-31 23:00:07.181 31118 INFO nova.compute.claims [-] [instance: 
0551a285-e0ba-4f67-b562-04a6eef5db63] Total memory: 1996 MB, used: 512.00 MB
  2015-03-31 23:00:07.181 31118 INFO nova.compute.claims [-] [instance: 
0551a285-e0ba-4f67-b562-04a6eef5db63] memory limit: 2994.00 MB, free: 2482.00 MB
  2015-03-31 23:00:07.182 31118 INFO nova.compute.claims [-] [instance: 
0551a285-e0ba-4f67-b562-04a6eef5db63] Total disk: 39 GB, used: 0.00 GB
  2015-03-31 23:00:07.182 31118 INFO nova.compute.claims [-] [instance: 
0551a285-e0ba-4f67-b562-04a6eef5db63] disk limit not specified, defaulting to 
unlimited
  2015-03-31 23:00:07.206 31118 INFO nova.compute.claims [-] [instance: 
0551a285-e0ba-4f67-b562-04a6eef5db63] Claim successful
  2015-03-31 23:00:07.295 31118 INFO nova.scheduler.client.report [-] 
Compute_service record updated for ('msk-os4cpu1', 'msk-os4cpu1')
  2015-03-31 23:00:07.407 31118 INFO nova.scheduler.client.report [-] 
Compute_service record updated for ('msk-os4cpu1', 'msk-os4cpu1')
  2015-03-31 23:00:07.574 31118 INFO nova.virt.libvirt.driver 
[req-5352dc7c-4474-4637-b6f1-1d2697580392 - - - - -] [instance: 
0551a285-e0ba-4f67-b562-04a6eef5db63] Creating image
  2015-03-31 23:00:07.819 31118 INFO nova.scheduler.client.report [-] 
Compute_service record updated for ('msk-os4cpu1', 'msk-os4cpu1')
  2015-03-31 23:00:07.907 31118 INFO nova.virt.disk.vfs.api 
[req-5352dc7c-4474-4637-b6f1-1d2697580392 - - - - -] Unable to import guestfs, 
falling back to VFSLocalFS
  2015-03-31 23:00:10.902 31118 ERROR nova.virt.libvirt.driver 
[req-5352dc7c-4474-4637-b6f1-1d2697580392 - - - - -] Error launching a defined 
domain with XML: <domain type='qemu'>
-   <name>instance-00000003</name>
-   <uuid>0551a285-e0ba-4f67-b562-04a6eef5db63</uuid>
-   <metadata>
-     <nova:instance xmlns:nova="http://openstack.org/xmlns/libvirt/nova/1.0";>
-       <nova:package version="2015.1-b3"/>
-       <nova:name>demo-instance1</nova:name>
-       <nova:creationTime>2015-03-31 23:00:08</nova:creationTime>
-       <nova:flavor name="m1.tiny">
-         <nova:memory>512</nova:memory>
-         <nova:disk>1</nova:disk>
-         <nova:swap>0</nova:swap>
-         <nova:ephemeral>0</nova:ephemeral>
-         <nova:vcpus>1</nova:vcpus>
-       </nova:flavor>
-       <nova:owner>
-         <nova:user uuid="f214e083aa91455e8437996c2dfe815b">demo</nova:user>
-         <nova:project 
uuid="337052ec76e54c42ae891843a1451ca6">demo</nova:project>
-       </nova:owner>
-       <nova:root type="image" uuid="38047887-61a7-41ea-9b49-27987d5e8bb9"/>
-     </nova:instance>
-   </metadata>
-   <memory unit='KiB'>524288</memory>
-   <currentMemory unit='KiB'>524288</currentMemory>
-   <vcpu placement='static' cpuset='0-1'>1</vcpu>
-   <cputune>
-     <shares>1024</shares>
-   </cputune>
-   <sysinfo type='smbios'>
-     <system>
-       <entry name='manufacturer'>OpenStack Foundation</entry>
-       <entry name='product'>OpenStack Nova</entry>
-       <entry name='version'>2015.1-b3</entry>
-       <entry name='serial'>d6b7f537-d637-c7cd-c824-7b2b5be7ef4c</entry>
-       <entry name='uuid'>0551a285-e0ba-4f67-b562-04a6eef5db63</entry>
-     </system>
-   </sysinfo>
-   <os>
-     <type arch='x86_64' machine='pc-i440fx-utopic'>hvm</type>
-     <boot dev='hd'/>
-     <smbios mode='sysinfo'/>
-   </os>
-   <features>
-     <acpi/>
-     <apic/>
-   </features>
-   <cpu mode='host-model'>
-     <model fallback='allow'/>
-     <topology sockets='1' cores='1' threads='1'/>
-   </cpu>
-   <clock offset='utc'/>
-   <on_poweroff>destroy</on_poweroff>
-   <on_reboot>restart</on_reboot>
-   <on_crash>destroy</on_crash>
-   <devices>
-     <emulator>/usr/bin/qemu-system-x86_64</emulator>
-     <disk type='file' device='disk'>
-       <driver name='qemu' type='qcow2' cache='none'/>
-       <source 
file='/var/lib/nova/instances/0551a285-e0ba-4f67-b562-04a6eef5db63/disk'/>
-       <target dev='vda' bus='virtio'/>
-       <address type='pci' domain='0x0000' bus='0x00' slot='0x04' 
function='0x0'/>
-     </disk>
-     <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'/>
-     <interface type='bridge'>
-       <mac address='fa:16:3e:14:a5:ae'/>
-       <source bridge='qbr4d42f321-ee'/>
-       <target dev='tap4d42f321-ee'/>
-       <model type='virtio'/>
-       <driver name='qemu'/>
-       <address type='pci' domain='0x0000' bus='0x00' slot='0x03' 
function='0x0'/>
-     </interface>
-     <serial type='file'>
-       <source 
path='/var/lib/nova/instances/0551a285-e0ba-4f67-b562-04a6eef5db63/console.log'/>
-       <target port='0'/>
-     </serial>
-     <serial type='pty'>
-       <target port='1'/>
-     </serial>
-     <console type='file'>
-       <source 
path='/var/lib/nova/instances/0551a285-e0ba-4f67-b562-04a6eef5db63/console.log'/>
-       <target type='serial' port='0'/>
-     </console>
-     <input type='tablet' bus='usb'/>
-     <input type='mouse' bus='ps2'/>
-     <input type='keyboard' bus='ps2'/>
-     <graphics type='vnc' port='-1' autoport='yes' listen='0.0.0.0' 
keymap='en-us'>
-       <listen type='address' address='0.0.0.0'/>
-     </graphics>
-     <video>
-       <model type='cirrus' vram='16384' 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='0x05' 
function='0x0'/>
-       <stats period='10'/>
-     </memballoon>
-   </devices>
+   <name>instance-00000003</name>
+   <uuid>0551a285-e0ba-4f67-b562-04a6eef5db63</uuid>
+   <metadata>
+     <nova:instance xmlns:nova="http://openstack.org/xmlns/libvirt/nova/1.0";>
+       <nova:package version="2015.1-b3"/>
+       <nova:name>demo-instance1</nova:name>
+       <nova:creationTime>2015-03-31 23:00:08</nova:creationTime>
+       <nova:flavor name="m1.tiny">
+         <nova:memory>512</nova:memory>
+         <nova:disk>1</nova:disk>
+         <nova:swap>0</nova:swap>
+         <nova:ephemeral>0</nova:ephemeral>
+         <nova:vcpus>1</nova:vcpus>
+       </nova:flavor>
+       <nova:owner>
+         <nova:user uuid="f214e083aa91455e8437996c2dfe815b">demo</nova:user>
+         <nova:project 
uuid="337052ec76e54c42ae891843a1451ca6">demo</nova:project>
+       </nova:owner>
+       <nova:root type="image" uuid="38047887-61a7-41ea-9b49-27987d5e8bb9"/>
+     </nova:instance>
+   </metadata>
+   <memory unit='KiB'>524288</memory>
+   <currentMemory unit='KiB'>524288</currentMemory>
+   <vcpu placement='static' cpuset='0-1'>1</vcpu>
+   <cputune>
+     <shares>1024</shares>
+   </cputune>
+   <sysinfo type='smbios'>
+     <system>
+       <entry name='manufacturer'>OpenStack Foundation</entry>
+       <entry name='product'>OpenStack Nova</entry>
+       <entry name='version'>2015.1-b3</entry>
+       <entry name='serial'>d6b7f537-d637-c7cd-c824-7b2b5be7ef4c</entry>
+       <entry name='uuid'>0551a285-e0ba-4f67-b562-04a6eef5db63</entry>
+     </system>
+   </sysinfo>
+   <os>
+     <type arch='x86_64' machine='pc-i440fx-utopic'>hvm</type>
+     <boot dev='hd'/>
+     <smbios mode='sysinfo'/>
+   </os>
+   <features>
+     <acpi/>
+     <apic/>
+   </features>
+   <cpu mode='host-model'>
+     <model fallback='allow'/>
+     <topology sockets='1' cores='1' threads='1'/>
+   </cpu>
+   <clock offset='utc'/>
+   <on_poweroff>destroy</on_poweroff>
+   <on_reboot>restart</on_reboot>
+   <on_crash>destroy</on_crash>
+   <devices>
+     <emulator>/usr/bin/qemu-system-x86_64</emulator>
+     <disk type='file' device='disk'>
+       <driver name='qemu' type='qcow2' cache='none'/>
+       <source 
file='/var/lib/nova/instances/0551a285-e0ba-4f67-b562-04a6eef5db63/disk'/>
+       <target dev='vda' bus='virtio'/>
+       <address type='pci' domain='0x0000' bus='0x00' slot='0x04' 
function='0x0'/>
+     </disk>
+     <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'/>
+     <interface type='bridge'>
+       <mac address='fa:16:3e:14:a5:ae'/>
+       <source bridge='qbr4d42f321-ee'/>
+       <target dev='tap4d42f321-ee'/>
+       <model type='virtio'/>
+       <driver name='qemu'/>
+       <address type='pci' domain='0x0000' bus='0x00' slot='0x03' 
function='0x0'/>
+     </interface>
+     <serial type='file'>
+       <source 
path='/var/lib/nova/instances/0551a285-e0ba-4f67-b562-04a6eef5db63/console.log'/>
+       <target port='0'/>
+     </serial>
+     <serial type='pty'>
+       <target port='1'/>
+     </serial>
+     <console type='file'>
+       <source 
path='/var/lib/nova/instances/0551a285-e0ba-4f67-b562-04a6eef5db63/console.log'/>
+       <target type='serial' port='0'/>
+     </console>
+     <input type='tablet' bus='usb'/>
+     <input type='mouse' bus='ps2'/>
+     <input type='keyboard' bus='ps2'/>
+     <graphics type='vnc' port='-1' autoport='yes' listen='0.0.0.0' 
keymap='en-us'>
+       <listen type='address' address='0.0.0.0'/>
+     </graphics>
+     <video>
+       <model type='cirrus' vram='16384' 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='0x05' 
function='0x0'/>
+       <stats period='10'/>
+     </memballoon>
+   </devices>
  </domain>
-  
+ 
  2015-03-31 23:00:10.903 31118 ERROR nova.compute.manager 
[req-5352dc7c-4474-4637-b6f1-1d2697580392 - - - - -] [instance: 
0551a285-e0ba-4f67-b562-04a6eef5db63] Instance failed to spawn
  2015-03-31 23:00:10.903 31118 TRACE nova.compute.manager [instance: 
0551a285-e0ba-4f67-b562-04a6eef5db63] Traceback (most recent call last):
  2015-03-31 23:00:10.903 31118 TRACE nova.compute.manager [instance: 
0551a285-e0ba-4f67-b562-04a6eef5db63]   File 
"/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 2398, in 
_build_resources
  2015-03-31 23:00:10.903 31118 TRACE nova.compute.manager [instance: 
0551a285-e0ba-4f67-b562-04a6eef5db63]     yield resources
  2015-03-31 23:00:10.903 31118 TRACE nova.compute.manager [instance: 
0551a285-e0ba-4f67-b562-04a6eef5db63]   File 
"/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 2270, in 
_build_and_run_instance
  2015-03-31 23:00:10.903 31118 TRACE nova.compute.manager [instance: 
0551a285-e0ba-4f67-b562-04a6eef5db63]     block_device_info=block_device_info)
  2015-03-31 23:00:10.903 31118 TRACE nova.compute.manager [instance: 
0551a285-e0ba-4f67-b562-04a6eef5db63]   File 
"/usr/lib/python2.7/dist-packages/nova/virt/libvirt/driver.py", line 2356, in 
spawn
  2015-03-31 23:00:10.903 31118 TRACE nova.compute.manager [instance: 
0551a285-e0ba-4f67-b562-04a6eef5db63]     block_device_info=block_device_info)
  2015-03-31 23:00:10.903 31118 TRACE nova.compute.manager [instance: 
0551a285-e0ba-4f67-b562-04a6eef5db63]   File 
"/usr/lib/python2.7/dist-packages/nova/virt/libvirt/driver.py", line 4375, in 
_create_domain_and_network
  2015-03-31 23:00:10.903 31118 TRACE nova.compute.manager [instance: 
0551a285-e0ba-4f67-b562-04a6eef5db63]     power_on=power_on)
  2015-03-31 23:00:10.903 31118 TRACE nova.compute.manager [instance: 
0551a285-e0ba-4f67-b562-04a6eef5db63]   File 
"/usr/lib/python2.7/dist-packages/nova/virt/libvirt/driver.py", line 4306, in 
_create_domain
  2015-03-31 23:00:10.903 31118 TRACE nova.compute.manager [instance: 
0551a285-e0ba-4f67-b562-04a6eef5db63]     LOG.error(err)
  2015-03-31 23:00:10.903 31118 TRACE nova.compute.manager [instance: 
0551a285-e0ba-4f67-b562-04a6eef5db63]   File 
"/usr/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 85, in __exit__
  2015-03-31 23:00:10.903 31118 TRACE nova.compute.manager [instance: 
0551a285-e0ba-4f67-b562-04a6eef5db63]     six.reraise(self.type_, self.value, 
self.tb)
  2015-03-31 23:00:10.903 31118 TRACE nova.compute.manager [instance: 
0551a285-e0ba-4f67-b562-04a6eef5db63]   File 
"/usr/lib/python2.7/dist-packages/nova/virt/libvirt/driver.py", line 4296, in 
_create_domain
  2015-03-31 23:00:10.903 31118 TRACE nova.compute.manager [instance: 
0551a285-e0ba-4f67-b562-04a6eef5db63]     domain.createWithFlags(launch_flags)
  2015-03-31 23:00:10.903 31118 TRACE nova.compute.manager [instance: 
0551a285-e0ba-4f67-b562-04a6eef5db63]   File 
"/usr/lib/python2.7/dist-packages/eventlet/tpool.py", line 183, in doit
  2015-03-31 23:00:10.903 31118 TRACE nova.compute.manager [instance: 
0551a285-e0ba-4f67-b562-04a6eef5db63]     result = proxy_call(self._autowrap, 
f, *args, **kwargs)
  2015-03-31 23:00:10.903 31118 TRACE nova.compute.manager [instance: 
0551a285-e0ba-4f67-b562-04a6eef5db63]   File 
"/usr/lib/python2.7/dist-packages/eventlet/tpool.py", line 141, in proxy_call
  2015-03-31 23:00:10.903 31118 TRACE nova.compute.manager [instance: 
0551a285-e0ba-4f67-b562-04a6eef5db63]     rv = execute(f, *args, **kwargs)
  2015-03-31 23:00:10.903 31118 TRACE nova.compute.manager [instance: 
0551a285-e0ba-4f67-b562-04a6eef5db63]   File 
"/usr/lib/python2.7/dist-packages/eventlet/tpool.py", line 122, in execute
  2015-03-31 23:00:10.903 31118 TRACE nova.compute.manager [instance: 
0551a285-e0ba-4f67-b562-04a6eef5db63]     six.reraise(c, e, tb)
  2015-03-31 23:00:10.903 31118 TRACE nova.compute.manager [instance: 
0551a285-e0ba-4f67-b562-04a6eef5db63]   File 
"/usr/lib/python2.7/dist-packages/eventlet/tpool.py", line 80, in tworker
  2015-03-31 23:00:10.903 31118 TRACE nova.compute.manager [instance: 
0551a285-e0ba-4f67-b562-04a6eef5db63]     rv = meth(*args, **kwargs)
  2015-03-31 23:00:10.903 31118 TRACE nova.compute.manager [instance: 
0551a285-e0ba-4f67-b562-04a6eef5db63]   File 
"/usr/lib/python2.7/dist-packages/libvirt.py", line 896, in createWithFlags
  2015-03-31 23:00:10.903 31118 TRACE nova.compute.manager [instance: 
0551a285-e0ba-4f67-b562-04a6eef5db63]     if ret == -1: raise libvirtError 
('virDomainCreateWithFlags() failed', dom=self)
  2015-03-31 23:00:10.903 31118 TRACE nova.compute.manager [instance: 
0551a285-e0ba-4f67-b562-04a6eef5db63] libvirtError: Requested operation is not 
valid: cpu affinity is not supported
  2015-03-31 23:00:10.903 31118 TRACE nova.compute.manager [instance: 
0551a285-e0ba-4f67-b562-04a6eef5db63]
  2015-03-31 23:00:10.907 31118 INFO nova.compute.manager 
[req-88539061-8d37-45a9-8edb-edd12f199d07 f214e083aa91455e8437996c2dfe815b 
337052ec76e54c42ae891843a1451ca6 - - -] [instance: 
0551a285-e0ba-4f67-b562-04a6eef5db63] Terminating instance
  2015-03-31 23:00:10.913 31118 INFO nova.virt.libvirt.driver [-] [instance: 
0551a285-e0ba-4f67-b562-04a6eef5db63] Instance destroyed successfully.
  2015-03-31 23:00:10.936 31118 INFO nova.virt.libvirt.driver 
[req-5352dc7c-4474-4637-b6f1-1d2697580392 - - - - -] [instance: 
0551a285-e0ba-4f67-b562-04a6eef5db63] Deleting instance files 
/var/lib/nova/instances/0551a285-e0ba-4f67-b562-04a6eef5db63_del
  2015-03-31 23:00:10.937 31118 INFO nova.virt.libvirt.driver 
[req-5352dc7c-4474-4637-b6f1-1d2697580392 - - - - -] [instance: 
0551a285-e0ba-4f67-b562-04a6eef5db63] Deletion of 
/var/lib/nova/instances/0551a285-e0ba-4f67-b562-04a6eef5db63_del complete
  2015-03-31 23:00:11.053 31118 INFO nova.scheduler.client.report 
[req-5352dc7c-4474-4637-b6f1-1d2697580392 - - - - -] Compute_service record 
updated for ('msk-os4cpu1', 'msk-os4cpu1')

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1439280

Title:
  Libvirt CPU affinity error

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/libvirt/+bug/1439280/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to