conf: Introduce new <hostdev> attribute 'display'

QEMU 2.12 introduced a new type of display for mediated devices using
vfio-pci backend which allows a mediated device to be used as a VGA
compatible device as an alternative to an emulated video device. QEMU
exposes this feature via a vfio device property 'display' with supported
values 'on/off/auto' (libvirt will default to 'off').

This patch adds the necessary bits to domain config handling in order to
expose this feature. Since there's no convenient way for libvirt to come
up with usable defaults for the display setting, simply because libvirt
is not able to figure out which of the display implementations - dma-buf
which requires OpenGL support vs vfio regions which doesn't need OpenGL
(works with OpenGL enabled too) - the underlying mdev uses.

Reviewed-by: Ján Tomko <jtomko@redhat.com>
Signed-off-by: Erik Skultety <eskultet@redhat.com>
This commit is contained in:
Erik Skultety
2018-07-18 18:16:08 +02:00
parent f1f6f48582
commit d54e45b6ed
8 changed files with 222 additions and 8 deletions
+17 -3
View File
@@ -4532,9 +4532,23 @@
guest. Currently, <code>model='vfio-pci'</code> and
<code>model='vfio-ccw'</code> (<span class="since">Since 4.4.0</span>)
is supported. Refer <a href="drvnodedev.html#MDEV">MDEV</a> to create
a mediated device on the host. There are also some implications on the
usage of guest's address type depending on the <code>model</code>
attribute, see the <code>address</code> element below.
a mediated device on the host.
<span class="since">Since 4.6.0 (QEMU 2.12)</span> an optional
<code>display</code> attribute may be used to enable or disable
support for an accelerated remote desktop backed by a mediated
device (such as NVIDIA vGPU or Intel GVT-g) as an alternative to
emulated <a href="#elementsVideo">video devices</a>. This attribute
is limited to <code>model='vfio-pci'</code> only. Supported values
are either <code>on</code> or <code>off</code> (default is 'off').
It is required to use a
<a href="#elementsGraphics">graphical framebuffer</a> in order to
use this attribute, currently only supported with VNC, Spice and
egl-headless graphics devices.
<p>
Note: There are also some implications on the usage of guest's
address type depending on the <code>model</code> attribute,
see the <code>address</code> element below.
</p>
</dd>
</dl>
<p>
+5
View File
@@ -4579,6 +4579,11 @@
<value>vfio-ccw</value>
</choice>
</attribute>
<optional>
<attribute name="display">
<ref name="virOnOff"/>
</attribute>
</optional>
<element name="source">
<ref name="mdevaddress"/>
</element>