diff --git a/nova/tests/unit/virt/libvirt/test_driver.py b/nova/tests/unit/virt/libvirt/test_driver.py index cf78a1cb52ce..6960763816bf 100644 --- a/nova/tests/unit/virt/libvirt/test_driver.py +++ b/nova/tests/unit/virt/libvirt/test_driver.py @@ -2519,33 +2519,6 @@ class LibvirtConnTestCase(test.NoDBTestCase, instance_ref, [], image_meta, disk_info) - def test_get_guest_config_numa_bad_version_libvirt(self): - self.flags(virt_type='kvm', group='libvirt') - - self._test_get_guest_config_numa_unsupported( - versionutils.convert_version_to_int( - libvirt_driver.BAD_LIBVIRT_NUMA_VERSIONS[0]), - versionutils.convert_version_to_int( - libvirt_driver.MIN_QEMU_VERSION), - host.HV_DRIVER_QEMU, - fields.Architecture.X86_64, - exception.NUMATopologyUnsupported, - None) - - @mock.patch.object(libvirt_driver.LOG, 'warning') - def test_has_numa_support_bad_version_libvirt_log(self, mock_warn): - # Tests that a warning is logged once and only once when there is a bad - # BAD_LIBVIRT_NUMA_VERSIONS detected. - drvr = libvirt_driver.LibvirtDriver(fake.FakeVirtAPI(), True) - self.assertFalse(hasattr(drvr, '_bad_libvirt_numa_version_warn')) - with mock.patch.object(drvr._host, 'has_version', return_value=True): - for i in range(2): - self.assertFalse(drvr._has_numa_support()) - self.assertTrue(drvr._bad_libvirt_numa_version_warn) - self.assertEqual(1, mock_warn.call_count) - # assert the version is logged properly - self.assertEqual('1.2.9.2', mock_warn.call_args[0][1]) - def test_get_guest_config_numa_other_arch_qemu(self): self.flags(virt_type='kvm', group='libvirt') diff --git a/nova/virt/libvirt/driver.py b/nova/virt/libvirt/driver.py index 4988739cc2d2..3d170539966c 100644 --- a/nova/virt/libvirt/driver.py +++ b/nova/virt/libvirt/driver.py @@ -226,9 +226,6 @@ MIN_QEMU_VERSION = (2, 5, 0) NEXT_MIN_LIBVIRT_VERSION = (3, 0, 0) NEXT_MIN_QEMU_VERSION = (2, 8, 0) -# Versions of libvirt with known NUMA topology issues -# See bug #1449028 -BAD_LIBVIRT_NUMA_VERSIONS = [(1, 2, 9, 2)] # Versions of libvirt with broken cpu pinning support. This excludes # versions of libvirt with broken NUMA support since pinning needs # NUMA @@ -6203,17 +6200,6 @@ class LibvirtDriver(driver.ComputeDriver): def _has_numa_support(self): # This means that the host can support LibvirtConfigGuestNUMATune # and the nodeset field in LibvirtConfigGuestMemoryBackingPage - for ver in BAD_LIBVIRT_NUMA_VERSIONS: - if self._host.has_version(ver): - if not getattr(self, '_bad_libvirt_numa_version_warn', False): - LOG.warning('You are running with libvirt version %s ' - 'which is known to have broken NUMA support. ' - 'Consider patching or updating libvirt on ' - 'this host if you need NUMA support.', - libvirt_utils.version_to_string(ver)) - self._bad_libvirt_numa_version_warn = True - return False - caps = self._host.get_capabilities() if (caps.host.cpu.arch in (fields.Architecture.I686,