Hi
On Fri, Feb 14, 2025 at 4:03 PM Marc-André Lureau
<marcandre.lureau(a)redhat.com> wrote:
Hi
On Wed, Feb 12, 2025 at 8:21 PM Daniel P. Berrangé <berrange(a)redhat.com> wrote:
>
> On Wed, Jan 29, 2025 at 05:40:38PM +0400, marcandre.lureau(a)redhat.com wrote:
> > From: Marc-André Lureau <marcandre.lureau(a)redhat.com>
> >
> > We may want to check qemu-rdp presence, instead of failing later?
>
> Yes, we should validate qemu-rdp, because the capabilities get
> advertized to client apps in domain capabilities, as well as
> being the thing that checks XML configs in qemuDomainValidate.
> So if qemu-rdp is missing, we must not claim the capabilty.
Afaik, libvirt advertises capability for features that require
external process support: swtpm, passt, various helpers.. Do you think
we should also correct those?
Actually, there is some check for swtpm, but not for passt. I'll add
one for qemu-rdp.
>
> >
> > Signed-off-by: Marc-André Lureau <marcandre.lureau(a)redhat.com>
> > ---
> > src/qemu/qemu_capabilities.c | 7 +++++--
> > tests/domaincapsdata/qemu_10.0.0.s390x.xml | 1 +
> > tests/domaincapsdata/qemu_7.0.0-q35.x86_64.xml | 1 +
> > tests/domaincapsdata/qemu_7.0.0-tcg.x86_64.xml | 1 +
> > tests/domaincapsdata/qemu_7.0.0.x86_64.xml | 1 +
> > tests/domaincapsdata/qemu_7.1.0-q35.x86_64.xml | 1 +
> > tests/domaincapsdata/qemu_7.1.0-tcg.x86_64.xml | 1 +
> > tests/domaincapsdata/qemu_7.1.0.x86_64.xml | 1 +
> > tests/domaincapsdata/qemu_7.2.0-hvf.x86_64+hvf.xml | 1 +
> > tests/domaincapsdata/qemu_7.2.0-q35.x86_64.xml | 1 +
> > tests/domaincapsdata/qemu_7.2.0-tcg.x86_64+hvf.xml | 1 +
> > tests/domaincapsdata/qemu_7.2.0-tcg.x86_64.xml | 1 +
> > tests/domaincapsdata/qemu_7.2.0.ppc.xml | 1 +
> > tests/domaincapsdata/qemu_7.2.0.x86_64.xml | 1 +
> > tests/domaincapsdata/qemu_8.0.0-q35.x86_64.xml | 1 +
> > tests/domaincapsdata/qemu_8.0.0-tcg.x86_64.xml | 1 +
> > tests/domaincapsdata/qemu_8.0.0.x86_64.xml | 1 +
> > tests/domaincapsdata/qemu_8.1.0-q35.x86_64.xml | 1 +
> > tests/domaincapsdata/qemu_8.1.0-tcg.x86_64.xml | 1 +
> > tests/domaincapsdata/qemu_8.1.0.s390x.xml | 1 +
> > tests/domaincapsdata/qemu_8.1.0.x86_64.xml | 1 +
> > tests/domaincapsdata/qemu_8.2.0-q35.x86_64.xml | 1 +
> > tests/domaincapsdata/qemu_8.2.0-tcg-virt.loongarch64.xml | 1 +
> > tests/domaincapsdata/qemu_8.2.0-tcg.x86_64.xml | 1 +
> > tests/domaincapsdata/qemu_8.2.0-virt.aarch64.xml | 1 +
> > tests/domaincapsdata/qemu_8.2.0-virt.loongarch64.xml | 1 +
> > tests/domaincapsdata/qemu_8.2.0.aarch64.xml | 1 +
> > tests/domaincapsdata/qemu_8.2.0.armv7l.xml | 1 +
> > tests/domaincapsdata/qemu_8.2.0.s390x.xml | 1 +
> > tests/domaincapsdata/qemu_8.2.0.x86_64.xml | 1 +
> > tests/domaincapsdata/qemu_9.0.0-q35.x86_64.xml | 1 +
> > tests/domaincapsdata/qemu_9.0.0-tcg.x86_64.xml | 1 +
> > tests/domaincapsdata/qemu_9.0.0.sparc.xml | 1 +
> > tests/domaincapsdata/qemu_9.0.0.x86_64.xml | 1 +
> > tests/domaincapsdata/qemu_9.1.0-q35.x86_64.xml | 1 +
> > tests/domaincapsdata/qemu_9.1.0-tcg-virt.riscv64.xml | 1 +
> > tests/domaincapsdata/qemu_9.1.0-tcg.x86_64.xml | 1 +
> > tests/domaincapsdata/qemu_9.1.0-virt.riscv64.xml | 1 +
> > tests/domaincapsdata/qemu_9.1.0.s390x.xml | 1 +
> > tests/domaincapsdata/qemu_9.1.0.x86_64.xml | 1 +
> > tests/domaincapsdata/qemu_9.2.0-q35.x86_64.xml | 1 +
> > tests/domaincapsdata/qemu_9.2.0-tcg.x86_64.xml | 1 +
> > tests/domaincapsdata/qemu_9.2.0.s390x.xml | 1 +
> > tests/domaincapsdata/qemu_9.2.0.x86_64.xml | 1 +
> > 44 files changed, 48 insertions(+), 2 deletions(-)
> >
> > diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c
> > index 490f5b28fd..43669aa27d 100644
> > --- a/src/qemu/qemu_capabilities.c
> > +++ b/src/qemu/qemu_capabilities.c
> > @@ -6497,8 +6497,11 @@ virQEMUCapsFillDomainDeviceGraphicsCaps(virQEMUCaps
*qemuCaps,
> > VIR_DOMAIN_CAPS_ENUM_SET(dev->type,
VIR_DOMAIN_GRAPHICS_TYPE_SPICE);
> > if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_EGL_HEADLESS))
> > VIR_DOMAIN_CAPS_ENUM_SET(dev->type,
VIR_DOMAIN_GRAPHICS_TYPE_EGL_HEADLESS);
> > - if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_DISPLAY_DBUS))
> > - VIR_DOMAIN_CAPS_ENUM_SET(dev->type,
VIR_DOMAIN_GRAPHICS_TYPE_DBUS);
> > + if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_DISPLAY_DBUS)) {
> > + VIR_DOMAIN_CAPS_ENUM_SET(dev->type,
> > + VIR_DOMAIN_GRAPHICS_TYPE_DBUS,
> > + VIR_DOMAIN_GRAPHICS_TYPE_RDP);
> > + }
> > }
>
>
> 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 :|
>