Hi On Wed, Jan 29, 2025 at 5:58 PM Daniel P. Berrangé <berra...@redhat.com> wrote: > > On Wed, Jan 29, 2025 at 05:40:34PM +0400, marcandre.lur...@redhat.com wrote: > > From: Marc-André Lureau <marcandre.lur...@redhat.com> > > > > Signed-off-by: Marc-André Lureau <marcandre.lur...@redhat.com> > > --- > > src/qemu/qemu_command.c | 8 ++++++-- > > 1 file changed, 6 insertions(+), 2 deletions(-) > > > > diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c > > index f08dba7988..dc142b366a 100644 > > --- a/src/qemu/qemu_command.c > > +++ b/src/qemu/qemu_command.c > > @@ -8420,6 +8420,7 @@ qemuBuildGraphicsCommandLine(virQEMUDriverConfig *cfg, > > > > break; > > case VIR_DOMAIN_GRAPHICS_TYPE_RDP: > > + break; > > case VIR_DOMAIN_GRAPHICS_TYPE_DESKTOP: > > virReportError(VIR_ERR_CONFIG_UNSUPPORTED, > > _("graphics type '%1$s' not supported"), > > @@ -9974,6 +9975,7 @@ qemuBuildCommandLineValidate(virQEMUDriver *driver, > > int spice = 0; > > int egl_headless = 0; > > int dbus = 0; > > + int rdp = 0; > > > > if (!driver->privileged) { > > /* If we have no cgroups then we can have no tunings that > > @@ -10022,15 +10024,17 @@ qemuBuildCommandLineValidate(virQEMUDriver > > *driver, > > ++dbus; > > break; > > case VIR_DOMAIN_GRAPHICS_TYPE_RDP: > > + ++rdp; > > + break; > > case VIR_DOMAIN_GRAPHICS_TYPE_DESKTOP: > > case VIR_DOMAIN_GRAPHICS_TYPE_LAST: > > break; > > } > > } > > > > - if (sdl > 1 || vnc > 1 || spice > 1 || egl_headless > 1 || dbus > 1) { > > + if (sdl > 1 || vnc > 1 || spice > 1 || egl_headless > 1 || dbus > 1 || > > rdp > 1) { > > virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", > > - _("only 1 graphics device of each type (sdl, vnc, > > spice, headless, dbus) is supported")); > > + _("only 1 graphics device of each type (sdl, vnc, > > spice, headless, dbus, rdp) is supported")); > > return -1; > > } > > The 'rdp' type also uses the 'dbus' backend in QEMU, so checking > dbus > 1 || rdp > 1, allows for two uses of the 'dbus' backend. > > Hypothetically we could also have future 'vnc' or 'spice' types > which used the dbus QEMU backend for out of process impls.
I don't think qemu supports multiple instances of the same graphics backends, this is true for -display dbus. If we were to have vnc or spice server out of process (I doubt someone will do one for spice, but I started one for vnc, fwiw), they would use the same dbus graphics instance. This check is thus still valid, only one of each kind is supported atm. Or am I missing something? > > IOW, we need to be counting QEMU backends here, rather than libvirt > types. > > With regards, > Daniel > -- > |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| > |: https://libvirt.org -o- https://fstop138.berrange.com :| > |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :| >