Revision history [back]

I have added the three lines below to /usr/share/pyshared/nova/virt/libvirt/driver.py file, now when Nova generates libvirt.xml it adds a topology line. Now the VM sees all the virtual CPUs as multiple cores on a single socket. The change needs to be applied on all compute nodes where you need it.

--- /usr/share/pyshared/nova/virt/libvirt/driver.py.old 2014-04-03 14:49:46.000000000 -0400
+++ /usr/share/pyshared/nova/virt/libvirt/driver.py     2015-01-22 10:21:37.000000000 -0500
@@ -2850,6 +2850,10 @@

         guest.cpu = self.get_guest_cpu_config()

+        guest.cpu.sockets = 1
+        guest.cpu.threads = 1
+        guest.cpu.cores = inst_type['vcpus']
+
         if 'root' in disk_mapping:
             root_device_name = block_device.prepend_dev(
                 disk_mapping['root']['dev'])