libvirt: Stop unconditionally enabling evmcs
In I008841988547573878c4e06e82f0fa55084e51b5 we started enabling a bunch of libvirt enlightenments for Windows unconditionally. Turns out, the `evmcs` enlightenment only works on Intel hosts, and we broke the ability to run Windows guests on AMD machines. Until we become smarter about conditionally enabling evmcs (with something like traits for host CPU features), just stop enabling it at all. Change-Id: I2ff4fdecd9dc69de283f0e52e07df1aeaf0a9048 Closes-bug: 2009280
This commit is contained in:
parent
da1c40dae9
commit
86a35e97d2
@ -27972,7 +27972,10 @@ class LibvirtDriverTestCase(test.NoDBTestCase, TraitsComparisonMixin):
|
||||
self.assertTrue(hv.reenlightenment)
|
||||
self.assertTrue(hv.tlbflush)
|
||||
self.assertTrue(hv.ipi)
|
||||
self.assertTrue(hv.evmcs)
|
||||
# NOTE(artom) evmcs only works on Intel hosts, so we can't enable it
|
||||
# unconditionally. Until we become smarter about it, just don't enable
|
||||
# it at all. See bug 2009280.
|
||||
self.assertFalse(hv.evmcs)
|
||||
|
||||
|
||||
class LibvirtVolumeUsageTestCase(test.NoDBTestCase):
|
||||
|
@ -6234,7 +6234,6 @@ class LibvirtDriver(driver.ComputeDriver):
|
||||
hv.reenlightenment = True
|
||||
hv.tlbflush = True
|
||||
hv.ipi = True
|
||||
hv.evmcs = True
|
||||
|
||||
# NOTE(kosamara): Spoofing the vendor_id aims to allow the nvidia
|
||||
# driver to work on windows VMs. At the moment, the nvidia driver
|
||||
|
@ -0,0 +1,8 @@
|
||||
---
|
||||
fixes:
|
||||
- |
|
||||
Bug 2009280 has been fixed by no longer enabling the evmcs enlightenment in
|
||||
the libvirt driver. evmcs only works on Intel CPUs, and domains with that
|
||||
enlightenment cannot be started on AMD hosts. There is a possible future
|
||||
feature to enable support for generating this enlightenment only when
|
||||
running on Intel hosts.
|
Loading…
Reference in New Issue
Block a user