On Wed, Jul 18, 2018 at 02:31:40PM +0200, Erik Skultety wrote:
Since 2.10 QEMU supports a new display type egl-headless which uses
the
drm nodes for OpenGL rendering copying back the rendered bits back to
QEMU into a dma-buf which can be accessed by standard "display" apps
like VNC or SPICE. Although this display type can be used on its own,
for any practical use case it makes sense to pair it with either VNC or
SPICE display. The clear benefit of this display is that VNC gains
OpenGL support, which it natively doesn't have, and SPICE gains remote
OpenGL support (native OpenGL support only works locally through a UNIX
socket, i.e. listen type=socket/none)
Signed-off-by: Erik Skultety <eskultet(a)redhat.com>
---
docs/formatdomain.html.in | 33 +++++++++++-
docs/schemas/domaincommon.rng | 3 ++
src/conf/domain_conf.c | 6 ++-
src/conf/domain_conf.h | 1 +
src/libxl/libxl_conf.c | 1 +
src/qemu/qemu_command.c | 14 ++++-
src/qemu/qemu_domain.c | 60 +++++++++++++++++++++-
src/qemu/qemu_driver.c | 2 +
src/qemu/qemu_hotplug.c | 1 +
src/qemu/qemu_process.c | 4 ++
src/vmx/vmx.c | 1 +
tests/domaincapsschemadata/full.xml | 1 +
tests/qemuxml2argvdata/graphics-egl-headless.args | 26 ++++++++++
tests/qemuxml2argvdata/graphics-egl-headless.xml | 31 +++++++++++
.../qemuxml2argvdata/graphics-sdl-egl-headless.xml | 35 +++++++++++++
.../graphics-spice-egl-headless.args | 31 +++++++++++
.../graphics-spice-egl-headless.xml | 36 +++++++++++++
.../graphics-spice-invalid-egl-headless.xml | 37 +++++++++++++
.../graphics-vnc-egl-headless.args | 28 ++++++++++
.../qemuxml2argvdata/graphics-vnc-egl-headless.xml | 37 +++++++++++++
tests/qemuxml2argvtest.c | 17 ++++++
.../graphics-spice-egl-headless.xml | 44 ++++++++++++++++
.../graphics-vnc-egl-headless.xml | 42 +++++++++++++++
tests/qemuxml2xmltest.c | 2 +
24 files changed, 488 insertions(+), 5 deletions(-)
create mode 100644 tests/qemuxml2argvdata/graphics-egl-headless.args
create mode 100644 tests/qemuxml2argvdata/graphics-egl-headless.xml
create mode 100644 tests/qemuxml2argvdata/graphics-sdl-egl-headless.xml
create mode 100644 tests/qemuxml2argvdata/graphics-spice-egl-headless.args
create mode 100644 tests/qemuxml2argvdata/graphics-spice-egl-headless.xml
create mode 100644 tests/qemuxml2argvdata/graphics-spice-invalid-egl-headless.xml
create mode 100644 tests/qemuxml2argvdata/graphics-vnc-egl-headless.args
create mode 100644 tests/qemuxml2argvdata/graphics-vnc-egl-headless.xml
create mode 100644 tests/qemuxml2xmloutdata/graphics-spice-egl-headless.xml
create mode 100644 tests/qemuxml2xmloutdata/graphics-vnc-egl-headless.xml
Reviewed-by: Ján Tomko <jtomko(a)redhat.com>
Jano