summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2014-09-30 13:42:15 +0000
committerGerrit Code Review <review@openstack.org>2014-09-30 13:42:15 +0000
commitf5b37bac2eec89003cef6220722cc527a00ae7ee (patch)
treef0534014738a954bd0cd8ae4904498cee82991b0
parent3c5be24eb91ac7b750caea862d13d3b174865c9e (diff)
parent6a374f21495c12568e4754800574e6703a0e626f (diff)
downloadnova-f5b37bac2eec89003cef6220722cc527a00ae7ee.tar.gz
Merge "libvirt: Make sure NUMA cell memory is in Kb in XML"2014.2.rc1
-rw-r--r--nova/tests/virt/libvirt/test_driver.py18
-rw-r--r--nova/virt/libvirt/driver.py6
2 files changed, 13 insertions, 11 deletions
diff --git a/nova/tests/virt/libvirt/test_driver.py b/nova/tests/virt/libvirt/test_driver.py
index 2cdf17b1de..9f4d293362 100644
--- a/nova/tests/virt/libvirt/test_driver.py
+++ b/nova/tests/virt/libvirt/test_driver.py
@@ -1217,7 +1217,7 @@ class LibvirtConnTestCase(test.TestCase):
def test_get_guest_config_numa_host_instance_no_fit(self):
instance_ref = db.instance_create(self.context, self.test_instance)
- flavor = objects.Flavor(memory_mb=1, vcpus=4, root_gb=496,
+ flavor = objects.Flavor(memory_mb=4096, vcpus=4, root_gb=496,
ephemeral_gb=8128, swap=33550336, name='fake',
extra_specs={})
@@ -1249,7 +1249,7 @@ class LibvirtConnTestCase(test.TestCase):
def test_get_guest_config_numa_host_instance_fit_w_cpu_pinset(self):
instance_ref = db.instance_create(self.context, self.test_instance)
- flavor = objects.Flavor(memory_mb=1, vcpus=2, root_gb=496,
+ flavor = objects.Flavor(memory_mb=1024, vcpus=2, root_gb=496,
ephemeral_gb=8128, swap=33550336, name='fake',
extra_specs={})
@@ -1288,7 +1288,7 @@ class LibvirtConnTestCase(test.TestCase):
cells=[hardware.VirtNUMATopologyCell(0, set([0]), 1024),
hardware.VirtNUMATopologyCell(1, set([2]), 1024)]))
instance_ref = db.instance_create(self.context, self.test_instance)
- flavor = objects.Flavor(memory_mb=1, vcpus=2, root_gb=496,
+ flavor = objects.Flavor(memory_mb=2048, vcpus=2, root_gb=496,
ephemeral_gb=8128, swap=33550336, name='fake',
extra_specs={})
@@ -1318,7 +1318,8 @@ class LibvirtConnTestCase(test.TestCase):
instance_topology.cells, cfg.cpu.numa.cells):
self.assertEqual(instance_cell.id, numa_cfg_cell.id)
self.assertEqual(instance_cell.cpuset, numa_cfg_cell.cpus)
- self.assertEqual(instance_cell.memory, numa_cfg_cell.memory)
+ self.assertEqual(instance_cell.memory * units.Ki,
+ numa_cfg_cell.memory)
def test_get_guest_config_numa_host_instance_topo(self):
instance_topology = objects.InstanceNUMATopology.obj_from_topology(
@@ -1327,7 +1328,7 @@ class LibvirtConnTestCase(test.TestCase):
hardware.VirtNUMATopologyCell(1, set([2, 3]),
1024)]))
instance_ref = db.instance_create(self.context, self.test_instance)
- flavor = objects.Flavor(memory_mb=1, vcpus=2, root_gb=496,
+ flavor = objects.Flavor(memory_mb=2048, vcpus=2, root_gb=496,
ephemeral_gb=8128, swap=33550336, name='fake',
extra_specs={})
@@ -1368,7 +1369,8 @@ class LibvirtConnTestCase(test.TestCase):
instance_topology.cells, cfg.cpu.numa.cells):
self.assertEqual(instance_cell.id, numa_cfg_cell.id)
self.assertEqual(instance_cell.cpuset, numa_cfg_cell.cpus)
- self.assertEqual(instance_cell.memory, numa_cfg_cell.memory)
+ self.assertEqual(instance_cell.memory * units.Ki,
+ numa_cfg_cell.memory)
def test_get_guest_config_clock(self):
self.flags(virt_type='kvm', group='libvirt')
@@ -7990,7 +7992,7 @@ class LibvirtConnTestCase(test.TestCase):
cell_0 = vconfig.LibvirtConfigCapsNUMACell()
cell_0.id = 0
- cell_0.memory = 1024
+ cell_0.memory = 1024 * units.Ki
cpu_0_0 = vconfig.LibvirtConfigCapsNUMACPU()
cpu_0_0.id = 0
cpu_0_0.socket_id = 0
@@ -8005,7 +8007,7 @@ class LibvirtConnTestCase(test.TestCase):
cell_1 = vconfig.LibvirtConfigCapsNUMACell()
cell_1.id = 1
- cell_1.memory = 1024
+ cell_1.memory = 1024 * units.Ki
cpu_1_0 = vconfig.LibvirtConfigCapsNUMACPU()
cpu_1_0.id = 2
cpu_1_0.socket_id = 1
diff --git a/nova/virt/libvirt/driver.py b/nova/virt/libvirt/driver.py
index e1aa22d8fc..8a0df90384 100644
--- a/nova/virt/libvirt/driver.py
+++ b/nova/virt/libvirt/driver.py
@@ -3670,7 +3670,7 @@ class LibvirtDriver(driver.ComputeDriver):
guest_cell = vconfig.LibvirtConfigGuestCPUNUMACell()
guest_cell.id = instance_cell.id
guest_cell.cpus = instance_cell.cpuset
- guest_cell.memory = instance_cell.memory
+ guest_cell.memory = instance_cell.memory * units.Ki
guest_cpu_numa.cells.append(guest_cell)
return guest_cpu_numa
@@ -3711,7 +3711,7 @@ class LibvirtDriver(driver.ComputeDriver):
if not guest_cpu_numa:
# No NUMA topology defined for instance
vcpus = flavor.vcpus
- memory = flavor.memory_mb * 1024
+ memory = flavor.memory_mb
if topology:
# Host is NUMA capable so try to keep the instance in a cell
viable_cells_cpus = []
@@ -4824,7 +4824,7 @@ class LibvirtDriver(driver.ComputeDriver):
topology = hardware.VirtNUMAHostTopology(
cells=[hardware.VirtNUMATopologyCellUsage(
cell.id, set(cpu.id for cpu in cell.cpus),
- cell.memory)
+ cell.memory / units.Ki)
for cell in topology.cells])
allowed_cpus = hardware.get_vcpu_pin_set()