On 12/22/21 20:43, marcandre.lureau(a)redhat.com wrote:
From: Marc-André Lureau <marcandre.lureau(a)redhat.com>
Signed-off-by: Marc-André Lureau <marcandre.lureau(a)redhat.com>
---
docs/schemas/basictypes.rng | 7 ++
docs/schemas/domaincommon.rng | 33 ++++++++
src/conf/domain_conf.c | 78 ++++++++++++++++++-
src/conf/domain_conf.h | 8 ++
src/conf/domain_validate.c | 9 ++-
src/libxl/libxl_conf.c | 1 +
src/qemu/qemu_capabilities.c | 2 +
src/qemu/qemu_command.c | 2 +
src/qemu/qemu_domain.c | 1 +
src/qemu/qemu_driver.c | 6 +-
src/qemu/qemu_hotplug.c | 1 +
src/qemu/qemu_process.c | 4 +
src/qemu/qemu_validate.c | 1 +
src/vmx/vmx.c | 1 +
.../domaincapsdata/qemu_7.0.0-q35.x86_64.xml | 1 +
.../domaincapsdata/qemu_7.0.0-tcg.x86_64.xml | 1 +
tests/domaincapsdata/qemu_7.0.0.x86_64.xml | 1 +
.../graphics-dbus-address.xml | 35 +++++++++
tests/qemuxml2argvdata/graphics-dbus-p2p.xml | 33 ++++++++
tests/qemuxml2argvdata/graphics-dbus.xml | 33 ++++++++
.../graphics-dbus-address.xml | 1 +
.../qemuxml2xmloutdata/graphics-dbus-p2p.xml | 1 +
tests/qemuxml2xmloutdata/graphics-dbus.xml | 1 +
tests/qemuxml2xmltest.c | 10 +++
24 files changed, 267 insertions(+), 4 deletions(-)
create mode 100644 tests/qemuxml2argvdata/graphics-dbus-address.xml
create mode 100644 tests/qemuxml2argvdata/graphics-dbus-p2p.xml
create mode 100644 tests/qemuxml2argvdata/graphics-dbus.xml
create mode 120000 tests/qemuxml2xmloutdata/graphics-dbus-address.xml
create mode 120000 tests/qemuxml2xmloutdata/graphics-dbus-p2p.xml
create mode 120000 tests/qemuxml2xmloutdata/graphics-dbus.xml
diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h
index 144ba4dd1211..cd219df0ac3c 100644
--- a/src/conf/domain_conf.h
+++ b/src/conf/domain_conf.h
@@ -1741,6 +1741,7 @@ typedef enum {
VIR_DOMAIN_GRAPHICS_TYPE_DESKTOP,
VIR_DOMAIN_GRAPHICS_TYPE_SPICE,
VIR_DOMAIN_GRAPHICS_TYPE_EGL_HEADLESS,
+ VIR_DOMAIN_GRAPHICS_TYPE_DBUS,
VIR_DOMAIN_GRAPHICS_TYPE_LAST
} virDomainGraphicsType;
@@ -1924,6 +1925,13 @@ struct _virDomainGraphicsDef {
struct {
char *rendernode;
} egl_headless;
+ struct {
+ bool p2p;
I wonder if it makes sense to turn this into proper virTristateBool. I
mean, that way we can track whether user entered p2p into the XML at
all. But I don't care that much/
+ char *address;
+ char *rendernode;
+ virTristateBool gl;
+ bool fromConfig; /* true if the @address is config file originated */
+ } dbus;
} data;
/* nListens, listens, and *port are only useful if type is vnc,
* rdp, or spice. They've been extracted from the union only to
Squash this in please:
diff --git c/src/libxl/libxl_domain.c i/src/libxl/libxl_domain.c
index dbe44f4ffc..af938192a9 100644
--- c/src/libxl/libxl_domain.c
+++ i/src/libxl/libxl_domain.c
@@ -957,6 +957,7 @@ libxlDomainCleanup(libxlDriverPrivate *driver,
case VIR_DOMAIN_GRAPHICS_TYPE_RDP:
case VIR_DOMAIN_GRAPHICS_TYPE_DESKTOP:
case VIR_DOMAIN_GRAPHICS_TYPE_EGL_HEADLESS:
+ case VIR_DOMAIN_GRAPHICS_TYPE_DBUS:
case VIR_DOMAIN_GRAPHICS_TYPE_LAST:
break;
}
diff --git c/src/libxl/libxl_driver.c i/src/libxl/libxl_driver.c
index 9ffa20161d..d4ae875854 100644
--- c/src/libxl/libxl_driver.c
+++ i/src/libxl/libxl_driver.c
@@ -465,6 +465,7 @@ libxlReconnectDomain(virDomainObj *vm,
case VIR_DOMAIN_GRAPHICS_TYPE_RDP:
case VIR_DOMAIN_GRAPHICS_TYPE_DESKTOP:
case VIR_DOMAIN_GRAPHICS_TYPE_EGL_HEADLESS:
+ case VIR_DOMAIN_GRAPHICS_TYPE_DBUS:
case VIR_DOMAIN_GRAPHICS_TYPE_LAST:
break;
}
Michal