[PATCH V2 3/3] qemu: Use command line to properly check for spice support
Michal Prívozník
mprivozn at redhat.com
Fri Oct 14 06:39:45 UTC 2022
On 10/13/22 19:36, Jim Fehlig wrote:
> On 10/13/22 09:46, Michal Prívozník wrote:
>> On 10/13/22 01:24, Jim Fehlig wrote:
>>> domcapabilities reports spice graphics support even against a minimal
>>> qemu installation without spice modules. Checking for 'query-spice'
>>> in the list of qmp commands supported by qemu is not sufficient to
>>> determine spice support. Checking the command line produces acurrate
>>> results.
>>>
>>> Signed-off-by: Jim Fehlig <jfehlig at suse.com>
>>> ---
>>> src/qemu/qemu_capabilities.c | 2 +-
>>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c
>>> index 98849daf4c..e40b5c6c00 100644
>>> --- a/src/qemu/qemu_capabilities.c
>>> +++ b/src/qemu/qemu_capabilities.c
>>> @@ -1205,7 +1205,6 @@ struct virQEMUCapsStringFlags {
>>> struct virQEMUCapsStringFlags virQEMUCapsCommands[] = {
>>> - { "query-spice", QEMU_CAPS_SPICE },
>>> { "query-vnc", QEMU_CAPS_VNC },
>>> { "rtc-reset-reinjection", QEMU_CAPS_RTC_RESET_REINJECTION },
>>> { "query-hotpluggable-cpus", QEMU_CAPS_QUERY_HOTPLUGGABLE_CPUS },
>>> @@ -3265,6 +3264,7 @@ struct virQEMUCapsCommandLineProps {
>>> static struct virQEMUCapsCommandLineProps virQEMUCapsCommandLine[] = {
>>> { "fsdev", "multidevs", QEMU_CAPS_FSDEV_MULTIDEVS },
>>> { "sandbox", NULL, QEMU_CAPS_SECCOMP_SANDBOX },
>>> + { "spice", NULL, QEMU_CAPS_SPICE },
>>> { "spice", "gl", QEMU_CAPS_SPICE_GL },
>>> { "spice", "rendernode", QEMU_CAPS_SPICE_RENDERNODE },
>>> { "vnc", "power-control", QEMU_CAPS_VNC_POWER_CONTROL },
>>
>>
>> How is the qemu compiled? Because I tried --disable-spice and libvirt
>> correctly did NOT set this capability. Then I tried
>> --disable-spice-protocol and either with or without your patch the
>> capability was set. I'm using current git master though, so could this
>> be why I don't see any difference?
>
> It's compiled with spice enabled, but then the corresponding modules not
> "installed". E.g. no /usr/lib64/qemu/*spice*.so.
AH! That's the missing part. That plus --enable-modules on the qemu
configure cmd line. Yep, it all fits together now.
Reviewed-by: Michal Privoznik <mprivozn at redhat.com>
Michal
More information about the libvir-list
mailing list