summaryrefslogtreecommitdiff
path: root/virtinst
diff options
context:
space:
mode:
authorCole Robinson <crobinso@redhat.com>2022-06-17 13:04:05 -0400
committerCole Robinson <crobinso@redhat.com>2022-06-17 13:09:39 -0400
commit48f66f27fd8ca4694b2dd9f17602db857a924083 (patch)
tree692a8ec63c615b6fc3f812a26423d5b73f71e213 /virtinst
parent49c2e046a1d68cbc8fc0263d2bb9f418afb81c19 (diff)
downloadvirt-manager-48f66f27fd8ca4694b2dd9f17602db857a924083.tar.gz
domcaps: armv7l doesn't support tpm-tis
Libvirt domcaps can advertise armv7l support for tpm-tis, even though it will explicitly reject that config: https://gitlab.com/libvirt/libvirt/-/issues/329 Work around that in domcaps. Without this, UEFI arm32 VMs generate default configs that libvirt will reject https://bugzilla.redhat.com/show_bug.cgi?id=2078995 Signed-off-by: Cole Robinson <crobinso@redhat.com>
Diffstat (limited to 'virtinst')
-rw-r--r--virtinst/domcapabilities.py8
1 files changed, 8 insertions, 0 deletions
diff --git a/virtinst/domcapabilities.py b/virtinst/domcapabilities.py
index 3ebc409d..b3a364b8 100644
--- a/virtinst/domcapabilities.py
+++ b/virtinst/domcapabilities.py
@@ -422,6 +422,14 @@ class DomainCapabilities(XMLBuilder):
"""
models = self.devices.tpm.get_enum("model").get_values()
backends = self.devices.tpm.get_enum("backendModel").get_values()
+
+ if self.arch == "armv7l" and models == ["tpm-tis"]:
+ # libvirt as of 8.4.0 can advertise armv7l tpm-tis support,
+ # but then explicitly rejects that config. If we see it,
+ # assume TPM is not supported
+ # https://gitlab.com/libvirt/libvirt/-/issues/329
+ return False
+
return len(models) > 0 and bool("emulator" in backends)
def supports_graphics_spice(self):