summaryrefslogtreecommitdiff
path: root/nova/notifications
diff options
context:
space:
mode:
authorKashyap Chamarthy <kchamart@redhat.com>2021-05-21 11:41:39 +0200
committerStephen Finucane <stephenfin@redhat.com>2021-09-02 17:46:22 +0100
commitc59084397401c690c6b23b5c8631138ec85e8f04 (patch)
treee4fa8909de5e9f54075b1dd760edce0119564943 /nova/notifications
parent771ea5bf1ea667d6ffe456ee6ef081b83a77f53c (diff)
downloadnova-c59084397401c690c6b23b5c8631138ec85e8f04.tar.gz
Allow 'bochs' as a display device option
The 'bochs' display device is a recommended[1] safe option for UEFI guests. This is supported in libvirt from version 5.6.0; Nova's current MIN_LIBVIRT_VERSION (6.0.0) satisfies this requirement. Partially quoting the "bochs display device" section from a post written by a QEMU graphics maintainer[1]: [...] Main advantage over standard VGA is that this device is alot simpler. The code size and complexity needed to emulate this device is an order of magnitude smaller, resulting in a reduced attack surface. Another nice feature is that you can place this device in a PCI Express slot. For UEFI guests it is safe to use the bochs display device instead of the standard VGA device. The firmware will setup a linear framebuffer as GOP anyway and never use any legacy VGA features. For BIOS guests this device might be useable as well, depending on whenever they depend on direct VGA hardware access or not. There is a vgabios which supports text rendering on a linear framebuffer, so software which uses the vgabios services for text output will continue to work. Linux bootloaders typically fall into this category. The linux text mode console (vgacon) uses direct hardware access and does not work. The framebuffer console (fbcon running on vesafb or bochs-drm) works. [1] https://www.kraxel.org/blog/2019/09/display-devices-in-qemu/ Implements: blueprint add-bochs-display-device Change-Id: Id194028f5d2cbaac1c5e699b71fd9751f87f5da5 Signed-off-by: Kashyap Chamarthy <kchamart@redhat.com>
Diffstat (limited to 'nova/notifications')
-rw-r--r--nova/notifications/objects/image.py3
1 files changed, 2 insertions, 1 deletions
diff --git a/nova/notifications/objects/image.py b/nova/notifications/objects/image.py
index d35627eb3d..0240d00105 100644
--- a/nova/notifications/objects/image.py
+++ b/nova/notifications/objects/image.py
@@ -124,7 +124,8 @@ class ImageMetaPropsPayload(base.NotificationPayloadBase):
# Version 1.5: Added 'hw_tpm_model' and 'hw_tpm_version' fields
# Version 1.6: Added 'socket' to hw_pci_numa_affinity_policy
# Version 1.7: Added 'hw_input_bus' field
- VERSION = '1.7'
+ # Version 1.8: Added 'bochs' as an option to 'hw_video_model'
+ VERSION = '1.8'
SCHEMA = {
k: ('image_meta_props', k) for k in image_meta.ImageMetaProps.fields}