On 06/12/2015 08:53 AM, Jiri Denemark wrote:
> Some machine types are only reported as canonical names for other
> machine types, which make it a bit harder to find what machine types are
> supported by a specific QEMU binary. Ideally, one would just use
> /capabilities/guest/arch[@name='...']/machine/text() XPath to get a list
> of all supported machine types, but it doesn't work right now.
>
> For example, we report
>
> <machine canonical='pc-i440fx-2.3'
maxCpus='255'>pc</machine>
>
> in guest capabilities, but the corresponding
>
> <machine maxCpus='255'>pc-i440fx-2.3</machine>
>
> is missing.
>
> This is a result of QMP probing. With "-machine ?" parsing QEMU sends
> us two lines:
>
> pc Standard PC (i440FX + PIIX, 1996) (alias of pc-i440fx-2.3)
> pc-i440fx-2.3 Standard PC (i440FX + PIIX, 1996) (default)
>
> while query-machines QMP command reports both in the same entry:
>
> {"name": "pc-i440fx-2.3", "is-default": true,
"cpu-max": 255, "alias": "pc"}
>
> Let's make sure we always report separate <machine/> for both the
> canonical name and its alias and using the canonical name as the default
> machine type (i.e., inserting it before its alias) in case is-default is
> true.
>
>
https://bugzilla.redhat.com/show_bug.cgi?id=1229666
>
> Signed-off-by: Jiri Denemark <jdenemar(a)redhat.com>
> ---
> src/qemu/qemu_capabilities.c | 38 ++++++++++++++++++++++++++++++++++++++
> 1 file changed, 38 insertions(+)
>
There's no existing test for this? I guess I would have expected to see
differences in output and thus test adjustments as well.
The code seems to be doing what is stated though... and the
tests/capabilityschemadata/caps-qemu-kvm.xml seems to show the output as
desired.
ACK -