On 09.05.2016 13:30, Pavel Hrdina wrote:
On Sun, May 08, 2016 at 01:49:06PM -0400, Cole Robinson wrote:
> Reports a tristate enum value for acceptable graphics type=spice
> <gl enable=XXX/>.
>
> Wire it up for qemu too. 'no' is always a valid value, so we
> unconditionally report it.
> ---
[...]
> diff --git a/tests/domaincapsschemadata/domaincaps-full.xml
b/tests/domaincapsschemadata/domaincaps-full.xml
> index 2f529ff..4eb5637 100644
> --- a/tests/domaincapsschemadata/domaincaps-full.xml
> +++ b/tests/domaincapsschemadata/domaincaps-full.xml
> @@ -47,6 +47,11 @@
> <value>desktop</value>
> <value>spice</value>
> </enum>
> + <enum name='spiceGL'>
> + <value>default</value>
> + <value>yes</value>
> + <value>no</value>
> + </enum>
Ewww, this doesn't look good and I agree with Michal that what if we add
support for another graphics device and what if one graphics device will have
more than one capability?
I would suggest something like this:
<graphics supported='yes'>
<enum name='type'>
<value>spice</value>
<value>vnc</value>
<value>sdl</value>
</enum>
I think we should have this enum in as it's easier for mgmt apps to
create XPath to query for supported values. In the case below they would
need to special case between supported graphics and the rest. That's why
I ACKed 1/5.
<type name='spice'>
<gl supported='yes'/>
</type>
I like this. The only problem I see with this approach is when we would
want to express multidimensional values. I mean what if <gl/> would not
depend just on graphics type='spice' but also on another attribute
having specific value? It is more visible in a general case: feature C
can be enabled iff A && B:
<tag A='yes' B='yes'>
<C enabled='yes'/>
</tag>
How would this be represented in domcaps?
> </graphics>
>
> or even do something like this:
>
> <graphics supported='yes'>
<type name='spice'>
<gl supported='yes'/>
</type>
> <type name='vnc'/>
> <type name='sdl'/>
> </graphics>
>
Michal