[libvirt] [PATCH v2 00/10] Adding resolution properties for video models

From: Julio Faracco <jcfaracco@gmail.com> This serie adds 'xres' and 'yres' QEMU display properties into a new element called 'resolution'. This element is covered by model element: <model type='foo'> <resolution x='800' y='600'/> </model> Only types VGA, QXL, Virtio and Bochs support passing resolution to driver. That's why some test cases were added too. Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1485793 Julio Faracco (10): docs: Adding 'xres' and 'yres' into qxl XML definition qemu: Include {xres,yres} QEMU capabilities for video models conf: Adding resolution property for model element qemu: Include {xres,yres} for QEMU command line tests: Include {xres,yres} QEMU capabilities into tests tests: Include bochs-display as capability test too tests: Introduce resolution test for QXL model tests: Introduce resolution test for Virtio model tests: Introduce resolution test for Bochs model tests: Introduce resolution test for VGA model docs/schemas/domaincommon.rng | 10 ++ src/conf/domain_conf.c | 75 +++++++- src/conf/domain_conf.h | 5 + src/conf/virconftypes.h | 3 + src/qemu/qemu_capabilities.c | 16 ++ src/qemu/qemu_capabilities.h | 2 + src/qemu/qemu_command.c | 20 +++ .../caps_2.10.0.aarch64.xml | 2 + .../caps_2.10.0.ppc64.xml | 2 + .../caps_2.10.0.s390x.xml | 2 + .../caps_2.10.0.x86_64.xml | 2 + .../caps_2.11.0.s390x.xml | 2 + .../caps_2.11.0.x86_64.xml | 2 + .../caps_2.12.0.aarch64.xml | 2 + .../caps_2.12.0.ppc64.xml | 2 + .../caps_2.12.0.s390x.xml | 2 + .../caps_2.12.0.x86_64.xml | 2 + .../caps_3.0.0.ppc64.replies | 139 +++++++++++---- .../qemucapabilitiesdata/caps_3.0.0.ppc64.xml | 2 + .../caps_3.0.0.riscv32.xml | 2 + .../caps_3.0.0.riscv64.xml | 2 + .../qemucapabilitiesdata/caps_3.0.0.s390x.xml | 2 + .../caps_3.0.0.x86_64.replies | 167 +++++++++++++----- .../caps_3.0.0.x86_64.xml | 2 + .../caps_3.1.0.ppc64.replies | 139 +++++++++++---- .../qemucapabilitiesdata/caps_3.1.0.ppc64.xml | 2 + .../caps_3.1.0.x86_64.replies | 167 +++++++++++++----- .../caps_3.1.0.x86_64.xml | 2 + .../caps_4.0.0.aarch64.replies | 139 +++++++++++---- .../caps_4.0.0.aarch64.xml | 2 + .../caps_4.0.0.ppc64.replies | 139 +++++++++++---- .../qemucapabilitiesdata/caps_4.0.0.ppc64.xml | 2 + .../caps_4.0.0.riscv32.replies | 131 +++++++++++--- .../caps_4.0.0.riscv32.xml | 2 + .../caps_4.0.0.riscv64.replies | 131 +++++++++++--- .../caps_4.0.0.riscv64.xml | 2 + .../qemucapabilitiesdata/caps_4.0.0.s390x.xml | 2 + .../caps_4.0.0.x86_64.replies | 167 +++++++++++++----- .../caps_4.0.0.x86_64.xml | 2 + .../caps_4.1.0.x86_64.replies | 159 ++++++++++++----- .../caps_4.1.0.x86_64.xml | 2 + ...ochs-display-resolution.x86_64-latest.args | 35 ++++ .../video-bochs-display-resolution.xml | 33 ++++ .../video-qxl-resolution.x86_64-latest.args | 35 ++++ .../qemuxml2argvdata/video-qxl-resolution.xml | 33 ++++ ...o-virtio-gpu-resolution.x86_64-latest.args | 35 ++++ .../video-virtio-gpu-resolution.xml | 33 ++++ tests/qemuxml2argvtest.c | 4 + ...bochs-display-resolution.x86_64-latest.xml | 33 ++++ .../video-qxl-resolution.x86_64-latest.xml | 33 ++++ ...eo-virtio-gpu-resolution.x86_64-latest.xml | 33 ++++ tests/qemuxml2xmltest.c | 5 + 52 files changed, 1604 insertions(+), 365 deletions(-) create mode 100644 tests/qemuxml2argvdata/video-bochs-display-resolution.x86_64-latest.args create mode 100644 tests/qemuxml2argvdata/video-bochs-display-resolution.xml create mode 100644 tests/qemuxml2argvdata/video-qxl-resolution.x86_64-latest.args create mode 100644 tests/qemuxml2argvdata/video-qxl-resolution.xml create mode 100644 tests/qemuxml2argvdata/video-virtio-gpu-resolution.x86_64-latest.args create mode 100644 tests/qemuxml2argvdata/video-virtio-gpu-resolution.xml create mode 100644 tests/qemuxml2xmloutdata/video-bochs-display-resolution.x86_64-latest.xml create mode 100644 tests/qemuxml2xmloutdata/video-qxl-resolution.x86_64-latest.xml create mode 100644 tests/qemuxml2xmloutdata/video-virtio-gpu-resolution.x86_64-latest.xml -- 2.20.1

From: Julio Faracco <jcfaracco@gmail.com> This commit adds resolution element with parameters 'x' and 'y' into video XML domain group definition. Both, properties were added into an element called 'resolution' and it was added inside 'model' element. They are set as optional. This element does not follow QEMU properties 'xres' and 'yres' format. Signed-off-by: Julio Faracco <jcfaracco@gmail.com> --- docs/schemas/domaincommon.rng | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/docs/schemas/domaincommon.rng b/docs/schemas/domaincommon.rng index c48f8c4f56..7b6468c36e 100644 --- a/docs/schemas/domaincommon.rng +++ b/docs/schemas/domaincommon.rng @@ -3637,6 +3637,16 @@ </optional> </element> </optional> + <optional> + <element name="resolution"> + <attribute name="x"> + <ref name="unsignedInt"/> + </attribute> + <attribute name="y"> + <ref name="unsignedInt"/> + </attribute> + </element> + </optional> </element> </optional> <optional> -- 2.20.1

From: Julio Faracco <jcfaracco@gmail.com> New QEMU capabilities for display resolution were added: xres and yres. Some models supports like VGA, QXL, Virtio and Bochs support set resolution for driver. The capabilities mentioned above were added into those models. Signed-off-by: Julio Faracco <jcfaracco@gmail.com> --- src/qemu/qemu_capabilities.c | 16 ++++++++++++++++ src/qemu/qemu_capabilities.h | 2 ++ 2 files changed, 18 insertions(+) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 73300128ea..e6d256a9cd 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -537,6 +537,8 @@ VIR_ENUM_IMPL(virQEMUCaps, /* 335 */ "bochs-display", "migration-file-drop-cache", + "xres", + "yres", ); @@ -1219,6 +1221,8 @@ static struct virQEMUCapsStringFlags virQEMUCapsDevicePropsKVMPit[] = { static struct virQEMUCapsStringFlags virQEMUCapsDevicePropsVGA[] = { { "vgamem_mb", QEMU_CAPS_VGA_VGAMEM }, + { "xres", QEMU_CAPS_XRES }, + { "yres", QEMU_CAPS_YRES }, }; static struct virQEMUCapsStringFlags virQEMUCapsDevicePropsVmwareSvga[] = { @@ -1229,6 +1233,8 @@ static struct virQEMUCapsStringFlags virQEMUCapsDevicePropsQxl[] = { { "vgamem_mb", QEMU_CAPS_QXL_VGAMEM }, { "vram64_size_mb", QEMU_CAPS_QXL_VRAM64 }, { "max_outputs", QEMU_CAPS_QXL_MAX_OUTPUTS }, + { "xres", QEMU_CAPS_XRES }, + { "yres", QEMU_CAPS_YRES }, }; static struct virQEMUCapsStringFlags virQEMUCapsDevicePropsVirtioGpu[] = { @@ -1237,6 +1243,13 @@ static struct virQEMUCapsStringFlags virQEMUCapsDevicePropsVirtioGpu[] = { { "disable-legacy", QEMU_CAPS_VIRTIO_PCI_DISABLE_LEGACY }, { "iommu_platform", QEMU_CAPS_VIRTIO_PCI_IOMMU_PLATFORM }, { "ats", QEMU_CAPS_VIRTIO_PCI_ATS }, + { "xres", QEMU_CAPS_XRES }, + { "yres", QEMU_CAPS_YRES }, +}; + +static struct virQEMUCapsStringFlags virQEMUCapsDevicePropsBochs[] = { + { "xres", QEMU_CAPS_XRES }, + { "yres", QEMU_CAPS_YRES }, }; static struct virQEMUCapsStringFlags virQEMUCapsDevicePropsICH9[] = { @@ -1362,6 +1375,9 @@ static virQEMUCapsObjectTypeProps virQEMUCapsDeviceProps[] = { { "virtio-gpu-device", virQEMUCapsDevicePropsVirtioGpu, ARRAY_CARDINALITY(virQEMUCapsDevicePropsVirtioGpu), QEMU_CAPS_DEVICE_VIRTIO_GPU }, + { "bochs-display", virQEMUCapsDevicePropsBochs, + ARRAY_CARDINALITY(virQEMUCapsDevicePropsBochs), + QEMU_CAPS_DEVICE_BOCHS_DISPLAY }, { "ICH9-LPC", virQEMUCapsDevicePropsICH9, ARRAY_CARDINALITY(virQEMUCapsDevicePropsICH9), -1 }, diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h index 68ef6c49b4..5e3d542994 100644 --- a/src/qemu/qemu_capabilities.h +++ b/src/qemu/qemu_capabilities.h @@ -518,6 +518,8 @@ typedef enum { /* virQEMUCapsFlags grouping marker for syntax-check */ /* 335 */ QEMU_CAPS_DEVICE_BOCHS_DISPLAY, /* -device bochs-display */ QEMU_CAPS_MIGRATION_FILE_DROP_CACHE, /* migration with disk cache on is safe for type='file' disks */ + QEMU_CAPS_XRES, /* -device *,xres= */ + QEMU_CAPS_YRES, /* -device *,yres= */ QEMU_CAPS_LAST /* this must always be the last item */ } virQEMUCapsFlags; -- 2.20.1

From: Julio Faracco <jcfaracco@gmail.com> New element 'resolution' with parameters 'x' and 'y' were added to support this settings for VGA, QXL, Virtio and Bochs XMLs. A new structure was created as Acceleration element has. It is easy to parse this property. Example: <model type='qxl'> <resolution x='800' y='600'\> </model> Signed-off-by: Julio Faracco <jcfaracco@gmail.com> --- src/conf/domain_conf.c | 75 ++++++++++++++++++++++++++++++++++++++++- src/conf/domain_conf.h | 5 +++ src/conf/virconftypes.h | 3 ++ 3 files changed, 82 insertions(+), 1 deletion(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index b7a342bb91..9db8fd9697 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -15311,6 +15311,53 @@ virDomainVideoAccelDefParseXML(xmlNodePtr node) return def; } +static virDomainVideoResolutionDefPtr +virDomainVideoResolutionDefParseXML(xmlNodePtr node) +{ + xmlNodePtr cur; + virDomainVideoResolutionDefPtr def; + VIR_AUTOFREE(char *) x = NULL; + VIR_AUTOFREE(char *) y = NULL; + + cur = node->children; + while (cur != NULL) { + if (cur->type == XML_ELEMENT_NODE) { + if (!x && !y && + virXMLNodeNameEqual(cur, "resolution")) { + x = virXMLPropString(cur, "x"); + y = virXMLPropString(cur, "y"); + } + } + cur = cur->next; + } + + if (!x || !y) + return NULL; + + if (VIR_ALLOC(def) < 0) + goto cleanup; + + if (x) { + if (virStrToLong_uip(x, NULL, 10, &def->x) < 0) { + virReportError(VIR_ERR_CONFIG_UNSUPPORTED, + _("cannot parse video x-resolution '%s'"), x); + goto cleanup; + } + } + + if (y) { + if (virStrToLong_uip(y, NULL, 10, &def->y) < 0) { + virReportError(VIR_ERR_CONFIG_UNSUPPORTED, + _("cannot parse video y-resolution '%s'"), y); + goto cleanup; + } + } + + cleanup: + return def; +} + + static virDomainVideoDriverDefPtr virDomainVideoDriverDefParseXML(xmlNodePtr node) { @@ -15389,6 +15436,7 @@ virDomainVideoDefParseXML(virDomainXMLOptionPtr xmlopt, } def->accel = virDomainVideoAccelDefParseXML(cur); + def->res = virDomainVideoResolutionDefParseXML(cur); } if (virXMLNodeNameEqual(cur, "driver")) { if (virDomainVirtioOptionsParseXML(cur, &def->virtio) < 0) @@ -15463,6 +15511,17 @@ virDomainVideoDefParseXML(virDomainXMLOptionPtr xmlopt, } } + if (def->res) { + if (def->type != VIR_DOMAIN_VIDEO_TYPE_VGA && + def->type != VIR_DOMAIN_VIDEO_TYPE_QXL && + def->type != VIR_DOMAIN_VIDEO_TYPE_VIRTIO && + def->type != VIR_DOMAIN_VIDEO_TYPE_BOCHS) { + virReportError(VIR_ERR_XML_ERROR, "%s", + _("model resolution is not supported")); + goto error; + } + } + if (virDomainDeviceInfoParseXML(xmlopt, node, &def->info, flags) < 0) goto error; @@ -26443,6 +26502,18 @@ virDomainVideoAccelDefFormat(virBufferPtr buf, virBufferAddLit(buf, "/>\n"); } +static void +virDomainVideoResolutionDefFormat(virBufferPtr buf, + virDomainVideoResolutionDefPtr def) +{ + virBufferAddLit(buf, "<resolution"); + if (def->x && def->y) { + virBufferAsprintf(buf, " x='%u' y='%u'", + def->x, def->y); + } + virBufferAddLit(buf, "/>\n"); +} + static int virDomainVideoDefFormat(virBufferPtr buf, virDomainVideoDefPtr def, @@ -26486,11 +26557,13 @@ virDomainVideoDefFormat(virBufferPtr buf, virBufferAsprintf(buf, " heads='%u'", def->heads); if (def->primary) virBufferAddLit(buf, " primary='yes'"); - if (def->accel) { + if (def->accel || def->res) { virBufferAddLit(buf, ">\n"); virBufferAdjustIndent(buf, 2); if (def->accel) virDomainVideoAccelDefFormat(buf, def->accel); + if (def->res) + virDomainVideoResolutionDefFormat(buf, def->res); virBufferAdjustIndent(buf, -2); virBufferAddLit(buf, "</model>\n"); } else { diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h index 33cef5b75c..a164f26d57 100644 --- a/src/conf/domain_conf.h +++ b/src/conf/domain_conf.h @@ -1407,6 +1407,10 @@ struct _virDomainVideoAccelDef { int accel3d; /* enum virTristateBool */ }; +struct _virDomainVideoResolutionDef { + unsigned int x; + unsigned int y; +}; struct _virDomainVideoDriverDef { virDomainVideoVGAConf vgaconf; @@ -1422,6 +1426,7 @@ struct _virDomainVideoDef { bool primary; virDomainVideoAccelDefPtr accel; virDomainVideoDriverDefPtr driver; + virDomainVideoResolutionDefPtr res; virDomainDeviceInfo info; virDomainVirtioOptionsPtr virtio; }; diff --git a/src/conf/virconftypes.h b/src/conf/virconftypes.h index a15cfb5f9e..462842f324 100644 --- a/src/conf/virconftypes.h +++ b/src/conf/virconftypes.h @@ -324,6 +324,9 @@ typedef virDomainVcpuDef *virDomainVcpuDefPtr; typedef struct _virDomainVideoAccelDef virDomainVideoAccelDef; typedef virDomainVideoAccelDef *virDomainVideoAccelDefPtr; +typedef struct _virDomainVideoResolutionDef virDomainVideoResolutionDef; +typedef virDomainVideoResolutionDef *virDomainVideoResolutionDefPtr; + typedef struct _virDomainVideoDef virDomainVideoDef; typedef virDomainVideoDef *virDomainVideoDefPtr; -- 2.20.1

On 8/30/19 5:40 PM, jcfaracco@gmail.com wrote:
From: Julio Faracco <jcfaracco@gmail.com>
New element 'resolution' with parameters 'x' and 'y' were added to support this settings for VGA, QXL, Virtio and Bochs XMLs. A new structure was created as Acceleration element has. It is easy to parse this property. Example:
<model type='qxl'> <resolution x='800' y='600'\>
The ending slash should be /
</model>
Signed-off-by: Julio Faracco <jcfaracco@gmail.com> --- src/conf/domain_conf.c | 75 ++++++++++++++++++++++++++++++++++++++++- src/conf/domain_conf.h | 5 +++ src/conf/virconftypes.h | 3 ++ 3 files changed, 82 insertions(+), 1 deletion(-)
diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index b7a342bb91..9db8fd9697 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -15311,6 +15311,53 @@ virDomainVideoAccelDefParseXML(xmlNodePtr node) return def; }
+static virDomainVideoResolutionDefPtr +virDomainVideoResolutionDefParseXML(xmlNodePtr node) +{ + xmlNodePtr cur; + virDomainVideoResolutionDefPtr def; + VIR_AUTOFREE(char *) x = NULL; + VIR_AUTOFREE(char *) y = NULL; + + cur = node->children; + while (cur != NULL) { + if (cur->type == XML_ELEMENT_NODE) { + if (!x && !y && + virXMLNodeNameEqual(cur, "resolution")) { + x = virXMLPropString(cur, "x"); + y = virXMLPropString(cur, "y"); + } + } + cur = cur->next; + } + + if (!x || !y) + return NULL; + + if (VIR_ALLOC(def) < 0) + goto cleanup; + + if (x) { + if (virStrToLong_uip(x, NULL, 10, &def->x) < 0) { + virReportError(VIR_ERR_CONFIG_UNSUPPORTED, + _("cannot parse video x-resolution '%s'"), x); + goto cleanup; + } + } + + if (y) { + if (virStrToLong_uip(y, NULL, 10, &def->y) < 0) { + virReportError(VIR_ERR_CONFIG_UNSUPPORTED, + _("cannot parse video y-resolution '%s'"), y); + goto cleanup; + } + } + + cleanup: + return def; +} + + static virDomainVideoDriverDefPtr virDomainVideoDriverDefParseXML(xmlNodePtr node) { @@ -15389,6 +15436,7 @@ virDomainVideoDefParseXML(virDomainXMLOptionPtr xmlopt, }
def->accel = virDomainVideoAccelDefParseXML(cur); + def->res = virDomainVideoResolutionDefParseXML(cur); } if (virXMLNodeNameEqual(cur, "driver")) { if (virDomainVirtioOptionsParseXML(cur, &def->virtio) < 0) @@ -15463,6 +15511,17 @@ virDomainVideoDefParseXML(virDomainXMLOptionPtr xmlopt, } }
+ if (def->res) { + if (def->type != VIR_DOMAIN_VIDEO_TYPE_VGA && + def->type != VIR_DOMAIN_VIDEO_TYPE_QXL && + def->type != VIR_DOMAIN_VIDEO_TYPE_VIRTIO && + def->type != VIR_DOMAIN_VIDEO_TYPE_BOCHS) { + virReportError(VIR_ERR_XML_ERROR, "%s", + _("model resolution is not supported")); + goto error; + } + } +
As I mention in the cover letter response I think all checks like this can be removed. But for future reference we are trying to move bits like this out of Parse* time and into the explicit Validation functions. - Cole

From: Julio Faracco <jcfaracco@gmail.com> Display devices can use now properties 'xres' and 'yres' by QEMU command line. Only models specified by their QEMU capabilities. This commit includes VGA, QXL, Virtio and Bochs. Signed-off-by: Julio Faracco <jcfaracco@gmail.com> --- src/qemu/qemu_command.c | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c index 1ca1ecd2f0..566e34a2c7 100644 --- a/src/qemu/qemu_command.c +++ b/src/qemu/qemu_command.c @@ -4564,6 +4564,11 @@ qemuBuildDeviceVideoStr(const virDomainDef *def, virBufferAsprintf(&buf, ",vram_size=%u", video->vram * 1024); } + if (video->res && video->res->x && video->res->y) { + /* QEMU accepts resolution xres and yres. */ + virBufferAsprintf(&buf, ",xres=%u,yres=%u", video->res->x, video->res->y); + } + if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_QXL_VRAM64)) { /* QEMU accepts mebibytes for vram64_size_mb. */ virBufferAsprintf(&buf, ",vram64_size_mb=%u", video->vram64 / 1024); @@ -4583,15 +4588,30 @@ qemuBuildDeviceVideoStr(const virDomainDef *def, if (video->heads) virBufferAsprintf(&buf, ",max_outputs=%u", video->heads); } + + if (video->res && video->res->x && video->res->y) { + /* QEMU accepts resolution xres and yres. */ + virBufferAsprintf(&buf, ",xres=%u,yres=%u", video->res->x, video->res->y); + } } else if ((video->type == VIR_DOMAIN_VIDEO_TYPE_VGA && virQEMUCapsGet(qemuCaps, QEMU_CAPS_VGA_VGAMEM)) || (video->type == VIR_DOMAIN_VIDEO_TYPE_VMVGA && virQEMUCapsGet(qemuCaps, QEMU_CAPS_VMWARE_SVGA_VGAMEM))) { if (video->vram) virBufferAsprintf(&buf, ",vgamem_mb=%u", video->vram / 1024); + + if (video->res && video->res->x && video->res->y) { + /* QEMU accepts resolution xres and yres. */ + virBufferAsprintf(&buf, ",xres=%u,yres=%u", video->res->x, video->res->y); + } } else if (video->type == VIR_DOMAIN_VIDEO_TYPE_BOCHS) { if (video->vram) virBufferAsprintf(&buf, ",vgamem=%uk", video->vram); + + if (video->res && video->res->x && video->res->y) { + /* QEMU accepts resolution xres and yres. */ + virBufferAsprintf(&buf, ",xres=%u,yres=%u", video->res->x, video->res->y); + } } if (qemuBuildDeviceAddressStr(&buf, def, &video->info, qemuCaps) < 0) -- 2.20.1

From: Julio Faracco <jcfaracco@gmail.com> Both resolution capabilities were added for QEMU versions: 2.10, 2.11, 2.12, 3.0.0, 3.10 and 4.0.0. Signed-off-by: Julio Faracco <jcfaracco@gmail.com> --- tests/qemucapabilitiesdata/caps_2.10.0.aarch64.xml | 2 ++ tests/qemucapabilitiesdata/caps_2.10.0.ppc64.xml | 2 ++ tests/qemucapabilitiesdata/caps_2.10.0.s390x.xml | 2 ++ tests/qemucapabilitiesdata/caps_2.10.0.x86_64.xml | 2 ++ tests/qemucapabilitiesdata/caps_2.11.0.s390x.xml | 2 ++ tests/qemucapabilitiesdata/caps_2.11.0.x86_64.xml | 2 ++ tests/qemucapabilitiesdata/caps_2.12.0.aarch64.xml | 2 ++ tests/qemucapabilitiesdata/caps_2.12.0.ppc64.xml | 2 ++ tests/qemucapabilitiesdata/caps_2.12.0.s390x.xml | 2 ++ tests/qemucapabilitiesdata/caps_2.12.0.x86_64.xml | 2 ++ tests/qemucapabilitiesdata/caps_3.0.0.ppc64.xml | 2 ++ tests/qemucapabilitiesdata/caps_3.0.0.riscv32.xml | 2 ++ tests/qemucapabilitiesdata/caps_3.0.0.riscv64.xml | 2 ++ tests/qemucapabilitiesdata/caps_3.0.0.s390x.xml | 2 ++ tests/qemucapabilitiesdata/caps_3.0.0.x86_64.xml | 2 ++ tests/qemucapabilitiesdata/caps_3.1.0.ppc64.xml | 2 ++ tests/qemucapabilitiesdata/caps_3.1.0.x86_64.xml | 2 ++ tests/qemucapabilitiesdata/caps_4.0.0.aarch64.xml | 2 ++ tests/qemucapabilitiesdata/caps_4.0.0.ppc64.xml | 2 ++ tests/qemucapabilitiesdata/caps_4.0.0.riscv32.xml | 2 ++ tests/qemucapabilitiesdata/caps_4.0.0.riscv64.xml | 2 ++ tests/qemucapabilitiesdata/caps_4.0.0.s390x.xml | 2 ++ tests/qemucapabilitiesdata/caps_4.0.0.x86_64.xml | 2 ++ tests/qemucapabilitiesdata/caps_4.1.0.x86_64.xml | 2 ++ 24 files changed, 48 insertions(+) diff --git a/tests/qemucapabilitiesdata/caps_2.10.0.aarch64.xml b/tests/qemucapabilitiesdata/caps_2.10.0.aarch64.xml index 9404e66144..0dc2268068 100644 --- a/tests/qemucapabilitiesdata/caps_2.10.0.aarch64.xml +++ b/tests/qemucapabilitiesdata/caps_2.10.0.aarch64.xml @@ -139,6 +139,8 @@ <flag name='vhost-vsock'/> <flag name='egl-headless'/> <flag name='iothread.poll-max-ns'/> + <flag name='xres'/> + <flag name='yres'/> <version>2010000</version> <kvmVersion>0</kvmVersion> <microcodeVersion>61700805</microcodeVersion> diff --git a/tests/qemucapabilitiesdata/caps_2.10.0.ppc64.xml b/tests/qemucapabilitiesdata/caps_2.10.0.ppc64.xml index 162fb1f035..29def35d43 100644 --- a/tests/qemucapabilitiesdata/caps_2.10.0.ppc64.xml +++ b/tests/qemucapabilitiesdata/caps_2.10.0.ppc64.xml @@ -138,6 +138,8 @@ <flag name='vhost-vsock'/> <flag name='egl-headless'/> <flag name='iothread.poll-max-ns'/> + <flag name='xres'/> + <flag name='yres'/> <version>2010000</version> <kvmVersion>0</kvmVersion> <microcodeVersion>42900805</microcodeVersion> diff --git a/tests/qemucapabilitiesdata/caps_2.10.0.s390x.xml b/tests/qemucapabilitiesdata/caps_2.10.0.s390x.xml index 21b918f8d4..e4c0afb6e6 100644 --- a/tests/qemucapabilitiesdata/caps_2.10.0.s390x.xml +++ b/tests/qemucapabilitiesdata/caps_2.10.0.s390x.xml @@ -103,6 +103,8 @@ <flag name='egl-headless'/> <flag name='zpci'/> <flag name='iothread.poll-max-ns'/> + <flag name='xres'/> + <flag name='yres'/> <version>2010000</version> <kvmVersion>0</kvmVersion> <microcodeVersion>39100805</microcodeVersion> diff --git a/tests/qemucapabilitiesdata/caps_2.10.0.x86_64.xml b/tests/qemucapabilitiesdata/caps_2.10.0.x86_64.xml index 2788fd9afe..d4b7a88c8a 100644 --- a/tests/qemucapabilitiesdata/caps_2.10.0.x86_64.xml +++ b/tests/qemucapabilitiesdata/caps_2.10.0.x86_64.xml @@ -181,6 +181,8 @@ <flag name='egl-headless'/> <flag name='iothread.poll-max-ns'/> <flag name='x86-max-cpu'/> + <flag name='xres'/> + <flag name='yres'/> <version>2010000</version> <kvmVersion>0</kvmVersion> <microcodeVersion>43100805</microcodeVersion> diff --git a/tests/qemucapabilitiesdata/caps_2.11.0.s390x.xml b/tests/qemucapabilitiesdata/caps_2.11.0.s390x.xml index 6cb997d299..e1dd982a3e 100644 --- a/tests/qemucapabilitiesdata/caps_2.11.0.s390x.xml +++ b/tests/qemucapabilitiesdata/caps_2.11.0.s390x.xml @@ -110,6 +110,8 @@ <flag name='egl-headless'/> <flag name='zpci'/> <flag name='iothread.poll-max-ns'/> + <flag name='xres'/> + <flag name='yres'/> <version>2011000</version> <kvmVersion>0</kvmVersion> <microcodeVersion>39100806</microcodeVersion> diff --git a/tests/qemucapabilitiesdata/caps_2.11.0.x86_64.xml b/tests/qemucapabilitiesdata/caps_2.11.0.x86_64.xml index 69f7fc2e4a..9e020f0e8e 100644 --- a/tests/qemucapabilitiesdata/caps_2.11.0.x86_64.xml +++ b/tests/qemucapabilitiesdata/caps_2.11.0.x86_64.xml @@ -187,6 +187,8 @@ <flag name='egl-headless'/> <flag name='iothread.poll-max-ns'/> <flag name='x86-max-cpu'/> + <flag name='xres'/> + <flag name='yres'/> <version>2011000</version> <kvmVersion>0</kvmVersion> <microcodeVersion>43100806</microcodeVersion> diff --git a/tests/qemucapabilitiesdata/caps_2.12.0.aarch64.xml b/tests/qemucapabilitiesdata/caps_2.12.0.aarch64.xml index 614fd14fb1..5b8469816b 100644 --- a/tests/qemucapabilitiesdata/caps_2.12.0.aarch64.xml +++ b/tests/qemucapabilitiesdata/caps_2.12.0.aarch64.xml @@ -153,6 +153,8 @@ <flag name='memory-backend-memfd.hugetlb'/> <flag name='iothread.poll-max-ns'/> <flag name='memory-backend-file.align'/> + <flag name='xres'/> + <flag name='yres'/> <version>2012000</version> <kvmVersion>0</kvmVersion> <microcodeVersion>61700807</microcodeVersion> diff --git a/tests/qemucapabilitiesdata/caps_2.12.0.ppc64.xml b/tests/qemucapabilitiesdata/caps_2.12.0.ppc64.xml index fd9ae0bcb8..e2b7a55e47 100644 --- a/tests/qemucapabilitiesdata/caps_2.12.0.ppc64.xml +++ b/tests/qemucapabilitiesdata/caps_2.12.0.ppc64.xml @@ -151,6 +151,8 @@ <flag name='memory-backend-memfd.hugetlb'/> <flag name='iothread.poll-max-ns'/> <flag name='memory-backend-file.align'/> + <flag name='xres'/> + <flag name='yres'/> <version>2011090</version> <kvmVersion>0</kvmVersion> <microcodeVersion>42900807</microcodeVersion> diff --git a/tests/qemucapabilitiesdata/caps_2.12.0.s390x.xml b/tests/qemucapabilitiesdata/caps_2.12.0.s390x.xml index 2930381068..b91c038ab8 100644 --- a/tests/qemucapabilitiesdata/caps_2.12.0.s390x.xml +++ b/tests/qemucapabilitiesdata/caps_2.12.0.s390x.xml @@ -121,6 +121,8 @@ <flag name='memory-backend-memfd.hugetlb'/> <flag name='iothread.poll-max-ns'/> <flag name='memory-backend-file.align'/> + <flag name='xres'/> + <flag name='yres'/> <version>2012000</version> <kvmVersion>0</kvmVersion> <microcodeVersion>39100807</microcodeVersion> diff --git a/tests/qemucapabilitiesdata/caps_2.12.0.x86_64.xml b/tests/qemucapabilitiesdata/caps_2.12.0.x86_64.xml index 61b3602c48..b6632a7553 100644 --- a/tests/qemucapabilitiesdata/caps_2.12.0.x86_64.xml +++ b/tests/qemucapabilitiesdata/caps_2.12.0.x86_64.xml @@ -195,6 +195,8 @@ <flag name='iothread.poll-max-ns'/> <flag name='memory-backend-file.align'/> <flag name='x86-max-cpu'/> + <flag name='xres'/> + <flag name='yres'/> <version>2011090</version> <kvmVersion>0</kvmVersion> <microcodeVersion>43100807</microcodeVersion> diff --git a/tests/qemucapabilitiesdata/caps_3.0.0.ppc64.xml b/tests/qemucapabilitiesdata/caps_3.0.0.ppc64.xml index 61be1df782..c72b61193a 100644 --- a/tests/qemucapabilitiesdata/caps_3.0.0.ppc64.xml +++ b/tests/qemucapabilitiesdata/caps_3.0.0.ppc64.xml @@ -152,6 +152,8 @@ <flag name='iothread.poll-max-ns'/> <flag name='memory-backend-file.align'/> <flag name='bochs-display'/> + <flag name='xres'/> + <flag name='yres'/> <version>2012050</version> <kvmVersion>0</kvmVersion> <microcodeVersion>42900757</microcodeVersion> diff --git a/tests/qemucapabilitiesdata/caps_3.0.0.riscv32.xml b/tests/qemucapabilitiesdata/caps_3.0.0.riscv32.xml index 865becc179..e8336c1fa4 100644 --- a/tests/qemucapabilitiesdata/caps_3.0.0.riscv32.xml +++ b/tests/qemucapabilitiesdata/caps_3.0.0.riscv32.xml @@ -92,6 +92,8 @@ <flag name='memory-backend-memfd.hugetlb'/> <flag name='iothread.poll-max-ns'/> <flag name='memory-backend-file.align'/> + <flag name='xres'/> + <flag name='yres'/> <version>3000000</version> <kvmVersion>0</kvmVersion> <microcodeVersion>0</microcodeVersion> diff --git a/tests/qemucapabilitiesdata/caps_3.0.0.riscv64.xml b/tests/qemucapabilitiesdata/caps_3.0.0.riscv64.xml index eb54aeaff3..a71ae8ab0b 100644 --- a/tests/qemucapabilitiesdata/caps_3.0.0.riscv64.xml +++ b/tests/qemucapabilitiesdata/caps_3.0.0.riscv64.xml @@ -92,6 +92,8 @@ <flag name='memory-backend-memfd.hugetlb'/> <flag name='iothread.poll-max-ns'/> <flag name='memory-backend-file.align'/> + <flag name='xres'/> + <flag name='yres'/> <version>3000000</version> <kvmVersion>0</kvmVersion> <microcodeVersion>0</microcodeVersion> diff --git a/tests/qemucapabilitiesdata/caps_3.0.0.s390x.xml b/tests/qemucapabilitiesdata/caps_3.0.0.s390x.xml index d511377262..19e18a9e10 100644 --- a/tests/qemucapabilitiesdata/caps_3.0.0.s390x.xml +++ b/tests/qemucapabilitiesdata/caps_3.0.0.s390x.xml @@ -123,6 +123,8 @@ <flag name='memory-backend-memfd.hugetlb'/> <flag name='iothread.poll-max-ns'/> <flag name='memory-backend-file.align'/> + <flag name='xres'/> + <flag name='yres'/> <version>3000000</version> <kvmVersion>0</kvmVersion> <microcodeVersion>39100757</microcodeVersion> diff --git a/tests/qemucapabilitiesdata/caps_3.0.0.x86_64.xml b/tests/qemucapabilitiesdata/caps_3.0.0.x86_64.xml index 7a322030bd..bbd0fc348b 100644 --- a/tests/qemucapabilitiesdata/caps_3.0.0.x86_64.xml +++ b/tests/qemucapabilitiesdata/caps_3.0.0.x86_64.xml @@ -199,6 +199,8 @@ <flag name='nvdimm.unarmed'/> <flag name='x86-max-cpu'/> <flag name='bochs-display'/> + <flag name='xres'/> + <flag name='yres'/> <version>3000000</version> <kvmVersion>0</kvmVersion> <microcodeVersion>43100757</microcodeVersion> diff --git a/tests/qemucapabilitiesdata/caps_3.1.0.ppc64.xml b/tests/qemucapabilitiesdata/caps_3.1.0.ppc64.xml index 400dc45be4..36a620e25e 100644 --- a/tests/qemucapabilitiesdata/caps_3.1.0.ppc64.xml +++ b/tests/qemucapabilitiesdata/caps_3.1.0.ppc64.xml @@ -157,6 +157,8 @@ <flag name='memory-backend-file.pmem'/> <flag name='overcommit'/> <flag name='bochs-display'/> + <flag name='xres'/> + <flag name='yres'/> <version>3000091</version> <kvmVersion>0</kvmVersion> <microcodeVersion>42900758</microcodeVersion> diff --git a/tests/qemucapabilitiesdata/caps_3.1.0.x86_64.xml b/tests/qemucapabilitiesdata/caps_3.1.0.x86_64.xml index 434c644ad4..280c015472 100644 --- a/tests/qemucapabilitiesdata/caps_3.1.0.x86_64.xml +++ b/tests/qemucapabilitiesdata/caps_3.1.0.x86_64.xml @@ -202,6 +202,8 @@ <flag name='overcommit'/> <flag name='x86-max-cpu'/> <flag name='bochs-display'/> + <flag name='xres'/> + <flag name='yres'/> <version>3000092</version> <kvmVersion>0</kvmVersion> <microcodeVersion>43100758</microcodeVersion> diff --git a/tests/qemucapabilitiesdata/caps_4.0.0.aarch64.xml b/tests/qemucapabilitiesdata/caps_4.0.0.aarch64.xml index 20f119665b..d177651ce9 100644 --- a/tests/qemucapabilitiesdata/caps_4.0.0.aarch64.xml +++ b/tests/qemucapabilitiesdata/caps_4.0.0.aarch64.xml @@ -165,6 +165,8 @@ <flag name='nbd-bitmap'/> <flag name='bochs-display'/> <flag name='migration-file-drop-cache'/> + <flag name='xres'/> + <flag name='yres'/> <version>4000000</version> <kvmVersion>0</kvmVersion> <microcodeVersion>61700758</microcodeVersion> diff --git a/tests/qemucapabilitiesdata/caps_4.0.0.ppc64.xml b/tests/qemucapabilitiesdata/caps_4.0.0.ppc64.xml index 9ea6f4d046..d16d36ee03 100644 --- a/tests/qemucapabilitiesdata/caps_4.0.0.ppc64.xml +++ b/tests/qemucapabilitiesdata/caps_4.0.0.ppc64.xml @@ -170,6 +170,8 @@ <flag name='nbd-bitmap'/> <flag name='bochs-display'/> <flag name='migration-file-drop-cache'/> + <flag name='xres'/> + <flag name='yres'/> <version>4000000</version> <kvmVersion>0</kvmVersion> <microcodeVersion>42900758</microcodeVersion> diff --git a/tests/qemucapabilitiesdata/caps_4.0.0.riscv32.xml b/tests/qemucapabilitiesdata/caps_4.0.0.riscv32.xml index 7503c2dbcd..022e5207e2 100644 --- a/tests/qemucapabilitiesdata/caps_4.0.0.riscv32.xml +++ b/tests/qemucapabilitiesdata/caps_4.0.0.riscv32.xml @@ -168,6 +168,8 @@ <flag name='nbd-bitmap'/> <flag name='bochs-display'/> <flag name='migration-file-drop-cache'/> + <flag name='xres'/> + <flag name='yres'/> <version>4000000</version> <kvmVersion>0</kvmVersion> <microcodeVersion>0</microcodeVersion> diff --git a/tests/qemucapabilitiesdata/caps_4.0.0.riscv64.xml b/tests/qemucapabilitiesdata/caps_4.0.0.riscv64.xml index 4a94179ee7..f91cf38924 100644 --- a/tests/qemucapabilitiesdata/caps_4.0.0.riscv64.xml +++ b/tests/qemucapabilitiesdata/caps_4.0.0.riscv64.xml @@ -168,6 +168,8 @@ <flag name='nbd-bitmap'/> <flag name='bochs-display'/> <flag name='migration-file-drop-cache'/> + <flag name='xres'/> + <flag name='yres'/> <version>4000000</version> <kvmVersion>0</kvmVersion> <microcodeVersion>0</microcodeVersion> diff --git a/tests/qemucapabilitiesdata/caps_4.0.0.s390x.xml b/tests/qemucapabilitiesdata/caps_4.0.0.s390x.xml index ef802f3d1f..787ab92be0 100644 --- a/tests/qemucapabilitiesdata/caps_4.0.0.s390x.xml +++ b/tests/qemucapabilitiesdata/caps_4.0.0.s390x.xml @@ -132,6 +132,8 @@ <flag name='bitmap-merge'/> <flag name='nbd-bitmap'/> <flag name='migration-file-drop-cache'/> + <flag name='xres'/> + <flag name='yres'/> <version>4000000</version> <kvmVersion>0</kvmVersion> <microcodeVersion>39100758</microcodeVersion> diff --git a/tests/qemucapabilitiesdata/caps_4.0.0.x86_64.xml b/tests/qemucapabilitiesdata/caps_4.0.0.x86_64.xml index 87c95f4d18..5849b4c341 100644 --- a/tests/qemucapabilitiesdata/caps_4.0.0.x86_64.xml +++ b/tests/qemucapabilitiesdata/caps_4.0.0.x86_64.xml @@ -207,6 +207,8 @@ <flag name='x86-max-cpu'/> <flag name='bochs-display'/> <flag name='migration-file-drop-cache'/> + <flag name='xres'/> + <flag name='yres'/> <version>4000000</version> <kvmVersion>0</kvmVersion> <microcodeVersion>43100758</microcodeVersion> diff --git a/tests/qemucapabilitiesdata/caps_4.1.0.x86_64.xml b/tests/qemucapabilitiesdata/caps_4.1.0.x86_64.xml index f4583d7fe7..77b148a580 100644 --- a/tests/qemucapabilitiesdata/caps_4.1.0.x86_64.xml +++ b/tests/qemucapabilitiesdata/caps_4.1.0.x86_64.xml @@ -209,6 +209,8 @@ <flag name='canonical-cpu-features'/> <flag name='bochs-display'/> <flag name='migration-file-drop-cache'/> + <flag name='xres'/> + <flag name='yres'/> <version>4000050</version> <kvmVersion>0</kvmVersion> <microcodeVersion>43100759</microcodeVersion> -- 2.20.1

From: Julio Faracco <jcfaracco@gmail.com> The display model 'bochs-display' should be added into capability test case of command 'device-list-properties' because we are supporting this display now. It is listed by 'virQEMUCapsDeviceProps'. See src/qemu/qemu_capabilities.c:1378. Signed-off-by: Julio Faracco <jcfaracco@gmail.com> --- .../caps_3.0.0.ppc64.replies | 139 +++++++++++---- .../caps_3.0.0.x86_64.replies | 167 +++++++++++++----- .../caps_3.1.0.ppc64.replies | 139 +++++++++++---- .../caps_3.1.0.x86_64.replies | 167 +++++++++++++----- .../caps_4.0.0.aarch64.replies | 139 +++++++++++---- .../caps_4.0.0.ppc64.replies | 139 +++++++++++---- .../caps_4.0.0.riscv32.replies | 131 +++++++++++--- .../caps_4.0.0.riscv64.replies | 131 +++++++++++--- .../caps_4.0.0.x86_64.replies | 167 +++++++++++++----- .../caps_4.1.0.x86_64.replies | 159 ++++++++++++----- 10 files changed, 1114 insertions(+), 364 deletions(-) diff --git a/tests/qemucapabilitiesdata/caps_3.0.0.ppc64.replies b/tests/qemucapabilitiesdata/caps_3.0.0.ppc64.replies index fa370a39bd..c3c9cdac53 100644 --- a/tests/qemucapabilitiesdata/caps_3.0.0.ppc64.replies +++ b/tests/qemucapabilitiesdata/caps_3.0.0.ppc64.replies @@ -4963,13 +4963,88 @@ { "execute": "device-list-properties", "arguments": { - "typename": "ICH9-LPC" + "typename": "bochs-display" }, "id": "libvirt-24" } { - "id": "libvirt-24", + "return": [ + { + "name": "yres", + "type": "uint32" + }, + { + "name": "xmax", + "type": "uint32" + }, + { + "name": "big-endian-framebuffer", + "type": "bool" + }, + { + "name": "addr", + "description": "Slot and optional function number, example: 06.0 or 06", + "type": "int32" + }, + { + "name": "vgamem", + "type": "size" + }, + { + "name": "edid", + "type": "bool" + }, + { + "name": "ymax", + "type": "uint32" + }, + { + "name": "x-pcie-extcap-init", + "description": "on\/off", + "type": "bool" + }, + { + "name": "x-pcie-lnksta-dllla", + "description": "on\/off", + "type": "bool" + }, + { + "name": "command_serr_enable", + "description": "on\/off", + "type": "bool" + }, + { + "name": "multifunction", + "description": "on\/off", + "type": "bool" + }, + { + "name": "romfile", + "type": "str" + }, + { + "name": "rombar", + "type": "uint32" + }, + { + "name": "xres", + "type": "uint32" + } + ], + "id": "libvirt-24" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "ICH9-LPC" + }, + "id": "libvirt-25" +} + +{ + "id": "libvirt-25", "error": { "class": "DeviceNotFound", "desc": "Device 'ICH9-LPC' not found" @@ -4981,7 +5056,7 @@ "arguments": { "typename": "virtio-balloon-pci" }, - "id": "libvirt-25" + "id": "libvirt-26" } { @@ -5124,7 +5199,7 @@ "type": "str" } ], - "id": "libvirt-25" + "id": "libvirt-26" } { @@ -5132,11 +5207,11 @@ "arguments": { "typename": "virtio-balloon-ccw" }, - "id": "libvirt-26" + "id": "libvirt-27" } { - "id": "libvirt-26", + "id": "libvirt-27", "error": { "class": "DeviceNotFound", "desc": "Device 'virtio-balloon-ccw' not found" @@ -5148,7 +5223,7 @@ "arguments": { "typename": "virtio-balloon-device" }, - "id": "libvirt-27" + "id": "libvirt-28" } { @@ -5192,7 +5267,7 @@ "type": "bool" } ], - "id": "libvirt-27" + "id": "libvirt-28" } { @@ -5200,7 +5275,7 @@ "arguments": { "typename": "nec-usb-xhci" }, - "id": "libvirt-28" + "id": "libvirt-29" } { @@ -5280,7 +5355,7 @@ "type": "uint32" } ], - "id": "libvirt-28" + "id": "libvirt-29" } { @@ -5288,7 +5363,7 @@ "arguments": { "typename": "spapr-pci-host-bridge" }, - "id": "libvirt-29" + "id": "libvirt-30" } { @@ -5346,7 +5421,7 @@ "type": "uint32" } ], - "id": "libvirt-29" + "id": "libvirt-30" } { @@ -5354,7 +5429,7 @@ "arguments": { "typename": "memory-backend-file" }, - "id": "libvirt-30" + "id": "libvirt-31" } { @@ -5404,7 +5479,7 @@ "type": "string" } ], - "id": "libvirt-30" + "id": "libvirt-31" } { @@ -5412,7 +5487,7 @@ "arguments": { "typename": "memory-backend-memfd" }, - "id": "libvirt-31" + "id": "libvirt-32" } { @@ -5462,12 +5537,12 @@ "type": "string" } ], - "id": "libvirt-31" + "id": "libvirt-32" } { "execute": "query-machines", - "id": "libvirt-32" + "id": "libvirt-33" } { @@ -5610,7 +5685,7 @@ "cpu-max": 1 } ], - "id": "libvirt-32" + "id": "libvirt-33" } { @@ -5618,7 +5693,7 @@ "arguments": { "typename": "pseries-3.0-machine" }, - "id": "libvirt-33" + "id": "libvirt-34" } { @@ -5789,12 +5864,12 @@ "type": "bool" } ], - "id": "libvirt-33" + "id": "libvirt-34" } { "execute": "query-cpu-definitions", - "id": "libvirt-34" + "id": "libvirt-35" } { @@ -7990,35 +8065,35 @@ "static": false } ], - "id": "libvirt-34" + "id": "libvirt-35" } { "execute": "query-tpm-models", - "id": "libvirt-35" + "id": "libvirt-36" } { "return": [ ], - "id": "libvirt-35" + "id": "libvirt-36" } { "execute": "query-tpm-types", - "id": "libvirt-36" + "id": "libvirt-37" } { "return": [ "emulator" ], - "id": "libvirt-36" + "id": "libvirt-37" } { "execute": "query-command-line-options", - "id": "libvirt-37" + "id": "libvirt-38" } { @@ -9148,12 +9223,12 @@ "option": "drive" } ], - "id": "libvirt-37" + "id": "libvirt-38" } { "execute": "query-migrate-capabilities", - "id": "libvirt-38" + "id": "libvirt-39" } { @@ -9223,12 +9298,12 @@ "capability": "late-block-activate" } ], - "id": "libvirt-38" + "id": "libvirt-39" } { "execute": "query-qmp-schema", - "id": "libvirt-39" + "id": "libvirt-40" } { @@ -21387,7 +21462,7 @@ "meta-type": "object" } ], - "id": "libvirt-39" + "id": "libvirt-40" } { diff --git a/tests/qemucapabilitiesdata/caps_3.0.0.x86_64.replies b/tests/qemucapabilitiesdata/caps_3.0.0.x86_64.replies index b2ec8d75d3..7309d25fe6 100644 --- a/tests/qemucapabilitiesdata/caps_3.0.0.x86_64.replies +++ b/tests/qemucapabilitiesdata/caps_3.0.0.x86_64.replies @@ -4227,11 +4227,86 @@ { "execute": "device-list-properties", "arguments": { - "typename": "ICH9-LPC" + "typename": "bochs-display" }, "id": "libvirt-27" } +{ + "return": [ + { + "name": "yres", + "type": "uint32" + }, + { + "name": "xmax", + "type": "uint32" + }, + { + "name": "big-endian-framebuffer", + "type": "bool" + }, + { + "name": "addr", + "description": "Slot and optional function number, example: 06.0 or 06", + "type": "int32" + }, + { + "name": "vgamem", + "type": "size" + }, + { + "name": "edid", + "type": "bool" + }, + { + "name": "ymax", + "type": "uint32" + }, + { + "name": "x-pcie-extcap-init", + "description": "on\/off", + "type": "bool" + }, + { + "name": "x-pcie-lnksta-dllla", + "description": "on\/off", + "type": "bool" + }, + { + "name": "command_serr_enable", + "description": "on\/off", + "type": "bool" + }, + { + "name": "multifunction", + "description": "on\/off", + "type": "bool" + }, + { + "name": "romfile", + "type": "str" + }, + { + "name": "rombar", + "type": "uint32" + }, + { + "name": "xres", + "type": "uint32" + } + ], + "id": "libvirt-27" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "ICH9-LPC" + }, + "id": "libvirt-28" +} + { "return": [ { @@ -4325,7 +4400,7 @@ "type": "uint32" } ], - "id": "libvirt-27" + "id": "libvirt-28" } { @@ -4333,7 +4408,7 @@ "arguments": { "typename": "virtio-balloon-pci" }, - "id": "libvirt-28" + "id": "libvirt-29" } { @@ -4476,7 +4551,7 @@ "type": "str" } ], - "id": "libvirt-28" + "id": "libvirt-29" } { @@ -4484,11 +4559,11 @@ "arguments": { "typename": "virtio-balloon-ccw" }, - "id": "libvirt-29" + "id": "libvirt-30" } { - "id": "libvirt-29", + "id": "libvirt-30", "error": { "class": "DeviceNotFound", "desc": "Device 'virtio-balloon-ccw' not found" @@ -4500,7 +4575,7 @@ "arguments": { "typename": "virtio-balloon-device" }, - "id": "libvirt-30" + "id": "libvirt-31" } { @@ -4544,7 +4619,7 @@ "type": "bool" } ], - "id": "libvirt-30" + "id": "libvirt-31" } { @@ -4552,7 +4627,7 @@ "arguments": { "typename": "nec-usb-xhci" }, - "id": "libvirt-31" + "id": "libvirt-32" } { @@ -4632,7 +4707,7 @@ "type": "uint32" } ], - "id": "libvirt-31" + "id": "libvirt-32" } { @@ -4640,7 +4715,7 @@ "arguments": { "typename": "intel-iommu" }, - "id": "libvirt-32" + "id": "libvirt-33" } { @@ -4679,7 +4754,7 @@ "type": "bool" } ], - "id": "libvirt-32" + "id": "libvirt-33" } { @@ -4687,7 +4762,7 @@ "arguments": { "typename": "mch" }, - "id": "libvirt-33" + "id": "libvirt-34" } { @@ -4730,7 +4805,7 @@ "type": "int32" } ], - "id": "libvirt-33" + "id": "libvirt-34" } { @@ -4738,7 +4813,7 @@ "arguments": { "typename": "nvdimm" }, - "id": "libvirt-34" + "id": "libvirt-35" } { @@ -4772,7 +4847,7 @@ "type": "uint64" } ], - "id": "libvirt-34" + "id": "libvirt-35" } @@ -4781,7 +4856,7 @@ "arguments": { "typename": "memory-backend-file" }, - "id": "libvirt-35" + "id": "libvirt-36" } { @@ -4831,7 +4906,7 @@ "type": "string" } ], - "id": "libvirt-35" + "id": "libvirt-36" } { @@ -4839,7 +4914,7 @@ "arguments": { "typename": "memory-backend-memfd" }, - "id": "libvirt-36" + "id": "libvirt-37" } { @@ -4889,7 +4964,7 @@ "type": "string" } ], - "id": "libvirt-36" + "id": "libvirt-37" } { @@ -4897,7 +4972,7 @@ "arguments": { "typename": "max-x86_64-cpu" }, - "id": "libvirt-37" + "id": "libvirt-38" } { @@ -5951,12 +6026,12 @@ "type": "bool" } ], - "id": "libvirt-37" + "id": "libvirt-38" } { "execute": "query-machines", - "id": "libvirt-38" + "id": "libvirt-39" } { @@ -6165,12 +6240,12 @@ "cpu-max": 255 } ], - "id": "libvirt-38" + "id": "libvirt-39" } { "execute": "query-cpu-definitions", - "id": "libvirt-39" + "id": "libvirt-40" } { @@ -6607,12 +6682,12 @@ "migration-safe": true } ], - "id": "libvirt-39" + "id": "libvirt-40" } { "execute": "query-tpm-models", - "id": "libvirt-40" + "id": "libvirt-41" } { @@ -6620,12 +6695,12 @@ "tpm-crb", "tpm-tis" ], - "id": "libvirt-40" + "id": "libvirt-41" } { "execute": "query-tpm-types", - "id": "libvirt-41" + "id": "libvirt-42" } { @@ -6633,12 +6708,12 @@ "passthrough", "emulator" ], - "id": "libvirt-41" + "id": "libvirt-42" } { "execute": "query-command-line-options", - "id": "libvirt-42" + "id": "libvirt-43" } { @@ -7937,12 +8012,12 @@ "option": "drive" } ], - "id": "libvirt-42" + "id": "libvirt-43" } { "execute": "query-migrate-capabilities", - "id": "libvirt-43" + "id": "libvirt-44" } { @@ -8012,12 +8087,12 @@ "capability": "late-block-activate" } ], - "id": "libvirt-43" + "id": "libvirt-44" } { "execute": "query-qmp-schema", - "id": "libvirt-44" + "id": "libvirt-45" } { @@ -19897,16 +19972,16 @@ "meta-type": "object" } ], - "id": "libvirt-44" + "id": "libvirt-45" } { "execute": "query-sev-capabilities", - "id": "libvirt-45" + "id": "libvirt-46" } { - "id": "libvirt-45", + "id": "libvirt-46", "error": { "class": "GenericError", "desc": "SEV feature is not available" @@ -19921,7 +19996,7 @@ "name": "host" } }, - "id": "libvirt-46" + "id": "libvirt-47" } { @@ -20114,7 +20189,7 @@ } } }, - "id": "libvirt-46" + "id": "libvirt-47" } { @@ -20309,7 +20384,7 @@ } } }, - "id": "libvirt-47" + "id": "libvirt-48" } { @@ -20572,7 +20647,7 @@ } } }, - "id": "libvirt-47" + "id": "libvirt-48" } { @@ -20586,7 +20661,7 @@ } } }, - "id": "libvirt-48" + "id": "libvirt-49" } { @@ -20779,7 +20854,7 @@ } } }, - "id": "libvirt-48" + "id": "libvirt-49" } { @@ -20974,7 +21049,7 @@ } } }, - "id": "libvirt-49" + "id": "libvirt-50" } { @@ -21237,7 +21312,7 @@ } } }, - "id": "libvirt-49" + "id": "libvirt-50" } { diff --git a/tests/qemucapabilitiesdata/caps_3.1.0.ppc64.replies b/tests/qemucapabilitiesdata/caps_3.1.0.ppc64.replies index 33666a43db..e16bd1574e 100644 --- a/tests/qemucapabilitiesdata/caps_3.1.0.ppc64.replies +++ b/tests/qemucapabilitiesdata/caps_3.1.0.ppc64.replies @@ -5017,13 +5017,88 @@ { "execute": "device-list-properties", "arguments": { - "typename": "ICH9-LPC" + "typename": "bochs-display" }, "id": "libvirt-24" } { - "id": "libvirt-24", + "return": [ + { + "name": "yres", + "type": "uint32" + }, + { + "name": "xmax", + "type": "uint32" + }, + { + "name": "big-endian-framebuffer", + "type": "bool" + }, + { + "name": "addr", + "description": "Slot and optional function number, example: 06.0 or 06", + "type": "int32" + }, + { + "name": "vgamem", + "type": "size" + }, + { + "name": "edid", + "type": "bool" + }, + { + "name": "ymax", + "type": "uint32" + }, + { + "name": "x-pcie-extcap-init", + "description": "on\/off", + "type": "bool" + }, + { + "name": "x-pcie-lnksta-dllla", + "description": "on\/off", + "type": "bool" + }, + { + "name": "command_serr_enable", + "description": "on\/off", + "type": "bool" + }, + { + "name": "multifunction", + "description": "on\/off", + "type": "bool" + }, + { + "name": "romfile", + "type": "str" + }, + { + "name": "rombar", + "type": "uint32" + }, + { + "name": "xres", + "type": "uint32" + } + ], + "id": "libvirt-24" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "ICH9-LPC" + }, + "id": "libvirt-25" +} + +{ + "id": "libvirt-25", "error": { "class": "DeviceNotFound", "desc": "Device 'ICH9-LPC' not found" @@ -5035,7 +5110,7 @@ "arguments": { "typename": "virtio-balloon-pci" }, - "id": "libvirt-25" + "id": "libvirt-26" } { @@ -5178,7 +5253,7 @@ "type": "str" } ], - "id": "libvirt-25" + "id": "libvirt-26" } { @@ -5186,11 +5261,11 @@ "arguments": { "typename": "virtio-balloon-ccw" }, - "id": "libvirt-26" + "id": "libvirt-27" } { - "id": "libvirt-26", + "id": "libvirt-27", "error": { "class": "DeviceNotFound", "desc": "Device 'virtio-balloon-ccw' not found" @@ -5202,7 +5277,7 @@ "arguments": { "typename": "virtio-balloon-device" }, - "id": "libvirt-27" + "id": "libvirt-28" } { @@ -5246,7 +5321,7 @@ "type": "bool" } ], - "id": "libvirt-27" + "id": "libvirt-28" } { @@ -5254,7 +5329,7 @@ "arguments": { "typename": "nec-usb-xhci" }, - "id": "libvirt-28" + "id": "libvirt-29" } { @@ -5334,7 +5409,7 @@ "type": "uint32" } ], - "id": "libvirt-28" + "id": "libvirt-29" } { @@ -5342,7 +5417,7 @@ "arguments": { "typename": "spapr-pci-host-bridge" }, - "id": "libvirt-29" + "id": "libvirt-30" } { @@ -5400,7 +5475,7 @@ "type": "uint32" } ], - "id": "libvirt-29" + "id": "libvirt-30" } { @@ -5408,7 +5483,7 @@ "arguments": { "typename": "memory-backend-file" }, - "id": "libvirt-30" + "id": "libvirt-31" } { @@ -5469,7 +5544,7 @@ "type": "bool" } ], - "id": "libvirt-30" + "id": "libvirt-31" } { @@ -5477,7 +5552,7 @@ "arguments": { "typename": "memory-backend-memfd" }, - "id": "libvirt-31" + "id": "libvirt-32" } { @@ -5537,12 +5612,12 @@ "type": "bool" } ], - "id": "libvirt-31" + "id": "libvirt-32" } { "execute": "query-machines", - "id": "libvirt-32" + "id": "libvirt-33" } { @@ -5690,7 +5765,7 @@ "cpu-max": 1 } ], - "id": "libvirt-32" + "id": "libvirt-33" } { @@ -5698,7 +5773,7 @@ "arguments": { "typename": "pseries-3.1-machine" }, - "id": "libvirt-33" + "id": "libvirt-34" } { @@ -5872,12 +5947,12 @@ "type": "bool" } ], - "id": "libvirt-33" + "id": "libvirt-34" } { "execute": "query-cpu-definitions", - "id": "libvirt-34" + "id": "libvirt-35" } { @@ -8073,35 +8148,35 @@ "static": false } ], - "id": "libvirt-34" + "id": "libvirt-35" } { "execute": "query-tpm-models", - "id": "libvirt-35" + "id": "libvirt-36" } { "return": [ ], - "id": "libvirt-35" + "id": "libvirt-36" } { "execute": "query-tpm-types", - "id": "libvirt-36" + "id": "libvirt-37" } { "return": [ "emulator" ], - "id": "libvirt-36" + "id": "libvirt-37" } { "execute": "query-command-line-options", - "id": "libvirt-37" + "id": "libvirt-38" } { @@ -9236,12 +9311,12 @@ "option": "drive" } ], - "id": "libvirt-37" + "id": "libvirt-38" } { "execute": "query-migrate-capabilities", - "id": "libvirt-38" + "id": "libvirt-39" } { @@ -9311,12 +9386,12 @@ "capability": "late-block-activate" } ], - "id": "libvirt-38" + "id": "libvirt-39" } { "execute": "query-qmp-schema", - "id": "libvirt-39" + "id": "libvirt-40" } { @@ -21184,7 +21259,7 @@ "meta-type": "object" } ], - "id": "libvirt-39" + "id": "libvirt-40" } { diff --git a/tests/qemucapabilitiesdata/caps_3.1.0.x86_64.replies b/tests/qemucapabilitiesdata/caps_3.1.0.x86_64.replies index b8b117ffaf..2c22eefc43 100644 --- a/tests/qemucapabilitiesdata/caps_3.1.0.x86_64.replies +++ b/tests/qemucapabilitiesdata/caps_3.1.0.x86_64.replies @@ -4270,11 +4270,86 @@ { "execute": "device-list-properties", "arguments": { - "typename": "ICH9-LPC" + "typename": "bochs-display" }, "id": "libvirt-27" } +{ + "return": [ + { + "name": "yres", + "type": "uint32" + }, + { + "name": "xmax", + "type": "uint32" + }, + { + "name": "big-endian-framebuffer", + "type": "bool" + }, + { + "name": "addr", + "description": "Slot and optional function number, example: 06.0 or 06", + "type": "int32" + }, + { + "name": "vgamem", + "type": "size" + }, + { + "name": "edid", + "type": "bool" + }, + { + "name": "ymax", + "type": "uint32" + }, + { + "name": "x-pcie-extcap-init", + "description": "on\/off", + "type": "bool" + }, + { + "name": "x-pcie-lnksta-dllla", + "description": "on\/off", + "type": "bool" + }, + { + "name": "command_serr_enable", + "description": "on\/off", + "type": "bool" + }, + { + "name": "multifunction", + "description": "on\/off", + "type": "bool" + }, + { + "name": "romfile", + "type": "str" + }, + { + "name": "rombar", + "type": "uint32" + }, + { + "name": "xres", + "type": "uint32" + } + ], + "id": "libvirt-27" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "ICH9-LPC" + }, + "id": "libvirt-28" +} + { "return": [ { @@ -4368,7 +4443,7 @@ "type": "uint32" } ], - "id": "libvirt-27" + "id": "libvirt-28" } { @@ -4376,7 +4451,7 @@ "arguments": { "typename": "virtio-balloon-pci" }, - "id": "libvirt-28" + "id": "libvirt-29" } { @@ -4519,7 +4594,7 @@ "type": "str" } ], - "id": "libvirt-28" + "id": "libvirt-29" } { @@ -4527,11 +4602,11 @@ "arguments": { "typename": "virtio-balloon-ccw" }, - "id": "libvirt-29" + "id": "libvirt-30" } { - "id": "libvirt-29", + "id": "libvirt-30", "error": { "class": "DeviceNotFound", "desc": "Device 'virtio-balloon-ccw' not found" @@ -4543,7 +4618,7 @@ "arguments": { "typename": "virtio-balloon-device" }, - "id": "libvirt-30" + "id": "libvirt-31" } { @@ -4587,7 +4662,7 @@ "type": "bool" } ], - "id": "libvirt-30" + "id": "libvirt-31" } { @@ -4595,7 +4670,7 @@ "arguments": { "typename": "nec-usb-xhci" }, - "id": "libvirt-31" + "id": "libvirt-32" } { @@ -4675,7 +4750,7 @@ "type": "uint32" } ], - "id": "libvirt-31" + "id": "libvirt-32" } { @@ -4683,7 +4758,7 @@ "arguments": { "typename": "intel-iommu" }, - "id": "libvirt-32" + "id": "libvirt-33" } { @@ -4722,7 +4797,7 @@ "type": "bool" } ], - "id": "libvirt-32" + "id": "libvirt-33" } { @@ -4730,7 +4805,7 @@ "arguments": { "typename": "mch" }, - "id": "libvirt-33" + "id": "libvirt-34" } { @@ -4773,7 +4848,7 @@ "type": "int32" } ], - "id": "libvirt-33" + "id": "libvirt-34" } { @@ -4781,7 +4856,7 @@ "arguments": { "typename": "nvdimm" }, - "id": "libvirt-34" + "id": "libvirt-35" } { @@ -4815,7 +4890,7 @@ "type": "uint64" } ], - "id": "libvirt-34" + "id": "libvirt-35" } { @@ -4823,7 +4898,7 @@ "arguments": { "typename": "memory-backend-file" }, - "id": "libvirt-35" + "id": "libvirt-36" } { @@ -4884,7 +4959,7 @@ "type": "bool" } ], - "id": "libvirt-35" + "id": "libvirt-36" } { @@ -4892,7 +4967,7 @@ "arguments": { "typename": "memory-backend-memfd" }, - "id": "libvirt-36" + "id": "libvirt-37" } { @@ -4952,7 +5027,7 @@ "type": "bool" } ], - "id": "libvirt-36" + "id": "libvirt-37" } { @@ -4960,7 +5035,7 @@ "arguments": { "typename": "max-x86_64-cpu" }, - "id": "libvirt-37" + "id": "libvirt-38" } { @@ -6062,12 +6137,12 @@ "type": "bool" } ], - "id": "libvirt-37" + "id": "libvirt-38" } { "execute": "query-machines", - "id": "libvirt-38" + "id": "libvirt-39" } { @@ -6286,12 +6361,12 @@ "cpu-max": 255 } ], - "id": "libvirt-38" + "id": "libvirt-39" } { "execute": "query-cpu-definitions", - "id": "libvirt-39" + "id": "libvirt-40" } { @@ -6810,12 +6885,12 @@ "migration-safe": true } ], - "id": "libvirt-39" + "id": "libvirt-40" } { "execute": "query-tpm-models", - "id": "libvirt-40" + "id": "libvirt-41" } { @@ -6823,12 +6898,12 @@ "tpm-crb", "tpm-tis" ], - "id": "libvirt-40" + "id": "libvirt-41" } { "execute": "query-tpm-types", - "id": "libvirt-41" + "id": "libvirt-42" } { @@ -6836,12 +6911,12 @@ "passthrough", "emulator" ], - "id": "libvirt-41" + "id": "libvirt-42" } { "execute": "query-command-line-options", - "id": "libvirt-42" + "id": "libvirt-43" } { @@ -8115,12 +8190,12 @@ "option": "drive" } ], - "id": "libvirt-42" + "id": "libvirt-43" } { "execute": "query-migrate-capabilities", - "id": "libvirt-43" + "id": "libvirt-44" } { @@ -8190,12 +8265,12 @@ "capability": "late-block-activate" } ], - "id": "libvirt-43" + "id": "libvirt-44" } { "execute": "query-qmp-schema", - "id": "libvirt-44" + "id": "libvirt-45" } { @@ -20380,16 +20455,16 @@ "meta-type": "object" } ], - "id": "libvirt-44" + "id": "libvirt-45" } { "execute": "query-sev-capabilities", - "id": "libvirt-45" + "id": "libvirt-46" } { - "id": "libvirt-45", + "id": "libvirt-46", "error": { "class": "GenericError", "desc": "SEV feature is not available" @@ -20404,7 +20479,7 @@ "name": "host" } }, - "id": "libvirt-46" + "id": "libvirt-47" } { @@ -20606,7 +20681,7 @@ } } }, - "id": "libvirt-46" + "id": "libvirt-47" } { @@ -20810,7 +20885,7 @@ } } }, - "id": "libvirt-47" + "id": "libvirt-48" } { @@ -21085,7 +21160,7 @@ } } }, - "id": "libvirt-47" + "id": "libvirt-48" } { @@ -21099,7 +21174,7 @@ } } }, - "id": "libvirt-48" + "id": "libvirt-49" } { @@ -21301,7 +21376,7 @@ } } }, - "id": "libvirt-48" + "id": "libvirt-49" } { @@ -21505,7 +21580,7 @@ } } }, - "id": "libvirt-49" + "id": "libvirt-50" } { @@ -21780,7 +21855,7 @@ } } }, - "id": "libvirt-49" + "id": "libvirt-50" } { diff --git a/tests/qemucapabilitiesdata/caps_4.0.0.aarch64.replies b/tests/qemucapabilitiesdata/caps_4.0.0.aarch64.replies index 91943860b1..58c40ebbf3 100644 --- a/tests/qemucapabilitiesdata/caps_4.0.0.aarch64.replies +++ b/tests/qemucapabilitiesdata/caps_4.0.0.aarch64.replies @@ -5380,13 +5380,88 @@ { "execute": "device-list-properties", "arguments": { - "typename": "ICH9-LPC" + "typename": "bochs-display" }, "id": "libvirt-25" } { - "id": "libvirt-25", + "return": [ + { + "name": "yres", + "type": "uint32" + }, + { + "name": "xmax", + "type": "uint32" + }, + { + "name": "big-endian-framebuffer", + "type": "bool" + }, + { + "name": "addr", + "description": "Slot and optional function number, example: 06.0 or 06", + "type": "int32" + }, + { + "name": "vgamem", + "type": "size" + }, + { + "name": "edid", + "type": "bool" + }, + { + "name": "ymax", + "type": "uint32" + }, + { + "name": "x-pcie-extcap-init", + "description": "on\/off", + "type": "bool" + }, + { + "name": "x-pcie-lnksta-dllla", + "description": "on\/off", + "type": "bool" + }, + { + "name": "command_serr_enable", + "description": "on\/off", + "type": "bool" + }, + { + "name": "multifunction", + "description": "on\/off", + "type": "bool" + }, + { + "name": "romfile", + "type": "str" + }, + { + "name": "rombar", + "type": "uint32" + }, + { + "name": "xres", + "type": "uint32" + } + ], + "id": "libvirt-25" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "ICH9-LPC" + }, + "id": "libvirt-26" +} + +{ + "id": "libvirt-26", "error": { "class": "DeviceNotFound", "desc": "Device 'ICH9-LPC' not found" @@ -5398,7 +5473,7 @@ "arguments": { "typename": "virtio-balloon-pci" }, - "id": "libvirt-26" + "id": "libvirt-27" } { @@ -5550,7 +5625,7 @@ "type": "str" } ], - "id": "libvirt-26" + "id": "libvirt-27" } { @@ -5558,11 +5633,11 @@ "arguments": { "typename": "virtio-balloon-ccw" }, - "id": "libvirt-27" + "id": "libvirt-28" } { - "id": "libvirt-27", + "id": "libvirt-28", "error": { "class": "DeviceNotFound", "desc": "Device 'virtio-balloon-ccw' not found" @@ -5574,7 +5649,7 @@ "arguments": { "typename": "virtio-balloon-device" }, - "id": "libvirt-28" + "id": "libvirt-29" } { @@ -5627,7 +5702,7 @@ "type": "bool" } ], - "id": "libvirt-28" + "id": "libvirt-29" } { @@ -5635,7 +5710,7 @@ "arguments": { "typename": "nec-usb-xhci" }, - "id": "libvirt-29" + "id": "libvirt-30" } { @@ -5715,7 +5790,7 @@ "type": "uint32" } ], - "id": "libvirt-29" + "id": "libvirt-30" } { @@ -5723,7 +5798,7 @@ "arguments": { "typename": "memory-backend-file" }, - "id": "libvirt-30" + "id": "libvirt-31" } { @@ -5788,7 +5863,7 @@ "type": "bool" } ], - "id": "libvirt-30" + "id": "libvirt-31" } { @@ -5796,7 +5871,7 @@ "arguments": { "typename": "memory-backend-memfd" }, - "id": "libvirt-31" + "id": "libvirt-32" } { @@ -5860,12 +5935,12 @@ "type": "bool" } ], - "id": "libvirt-31" + "id": "libvirt-32" } { "execute": "query-machines", - "id": "libvirt-32" + "id": "libvirt-33" } { @@ -6207,7 +6282,7 @@ "cpu-max": 1 } ], - "id": "libvirt-32" + "id": "libvirt-33" } { @@ -6215,7 +6290,7 @@ "arguments": { "typename": "virt-4.0-machine" }, - "id": "libvirt-33" + "id": "libvirt-34" } { @@ -6350,12 +6425,12 @@ "type": "string" } ], - "id": "libvirt-33" + "id": "libvirt-34" } { "execute": "query-cpu-definitions", - "id": "libvirt-34" + "id": "libvirt-35" } { @@ -6546,34 +6621,34 @@ "static": false } ], - "id": "libvirt-34" + "id": "libvirt-35" } { "execute": "query-tpm-models", - "id": "libvirt-35" + "id": "libvirt-36" } { "return": [ ], - "id": "libvirt-35" + "id": "libvirt-36" } { "execute": "query-tpm-types", - "id": "libvirt-36" + "id": "libvirt-37" } { "return": [ ], - "id": "libvirt-36" + "id": "libvirt-37" } { "execute": "query-command-line-options", - "id": "libvirt-37" + "id": "libvirt-38" } { @@ -7721,12 +7796,12 @@ "option": "drive" } ], - "id": "libvirt-37" + "id": "libvirt-38" } { "execute": "query-migrate-capabilities", - "id": "libvirt-38" + "id": "libvirt-39" } { @@ -7800,12 +7875,12 @@ "capability": "x-ignore-shared" } ], - "id": "libvirt-38" + "id": "libvirt-39" } { "execute": "query-qmp-schema", - "id": "libvirt-39" + "id": "libvirt-40" } { @@ -19892,12 +19967,12 @@ ] } ], - "id": "libvirt-39" + "id": "libvirt-40" } { "execute": "query-gic-capabilities", - "id": "libvirt-40" + "id": "libvirt-41" } { @@ -19913,7 +19988,7 @@ "kernel": false } ], - "id": "libvirt-40" + "id": "libvirt-41" } { diff --git a/tests/qemucapabilitiesdata/caps_4.0.0.ppc64.replies b/tests/qemucapabilitiesdata/caps_4.0.0.ppc64.replies index baa8f8963d..273265b528 100644 --- a/tests/qemucapabilitiesdata/caps_4.0.0.ppc64.replies +++ b/tests/qemucapabilitiesdata/caps_4.0.0.ppc64.replies @@ -5369,13 +5369,88 @@ { "execute": "device-list-properties", "arguments": { - "typename": "ICH9-LPC" + "typename": "bochs-display" }, "id": "libvirt-25" } { - "id": "libvirt-25", + "return": [ + { + "name": "yres", + "type": "uint32" + }, + { + "name": "xmax", + "type": "uint32" + }, + { + "name": "big-endian-framebuffer", + "type": "bool" + }, + { + "name": "addr", + "description": "Slot and optional function number, example: 06.0 or 06", + "type": "int32" + }, + { + "name": "vgamem", + "type": "size" + }, + { + "name": "edid", + "type": "bool" + }, + { + "name": "ymax", + "type": "uint32" + }, + { + "name": "x-pcie-extcap-init", + "description": "on\/off", + "type": "bool" + }, + { + "name": "x-pcie-lnksta-dllla", + "description": "on\/off", + "type": "bool" + }, + { + "name": "command_serr_enable", + "description": "on\/off", + "type": "bool" + }, + { + "name": "multifunction", + "description": "on\/off", + "type": "bool" + }, + { + "name": "romfile", + "type": "str" + }, + { + "name": "rombar", + "type": "uint32" + }, + { + "name": "xres", + "type": "uint32" + } + ], + "id": "libvirt-25" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "ICH9-LPC" + }, + "id": "libvirt-26" +} + +{ + "id": "libvirt-26", "error": { "class": "DeviceNotFound", "desc": "Device 'ICH9-LPC' not found" @@ -5387,7 +5462,7 @@ "arguments": { "typename": "virtio-balloon-pci" }, - "id": "libvirt-26" + "id": "libvirt-27" } { @@ -5539,7 +5614,7 @@ "type": "str" } ], - "id": "libvirt-26" + "id": "libvirt-27" } { @@ -5547,11 +5622,11 @@ "arguments": { "typename": "virtio-balloon-ccw" }, - "id": "libvirt-27" + "id": "libvirt-28" } { - "id": "libvirt-27", + "id": "libvirt-28", "error": { "class": "DeviceNotFound", "desc": "Device 'virtio-balloon-ccw' not found" @@ -5563,7 +5638,7 @@ "arguments": { "typename": "virtio-balloon-device" }, - "id": "libvirt-28" + "id": "libvirt-29" } { @@ -5616,7 +5691,7 @@ "type": "bool" } ], - "id": "libvirt-28" + "id": "libvirt-29" } { @@ -5624,7 +5699,7 @@ "arguments": { "typename": "nec-usb-xhci" }, - "id": "libvirt-29" + "id": "libvirt-30" } { @@ -5704,7 +5779,7 @@ "type": "uint32" } ], - "id": "libvirt-29" + "id": "libvirt-30" } { @@ -5712,7 +5787,7 @@ "arguments": { "typename": "spapr-pci-host-bridge" }, - "id": "libvirt-30" + "id": "libvirt-31" } { @@ -5770,7 +5845,7 @@ "type": "uint32" } ], - "id": "libvirt-30" + "id": "libvirt-31" } { @@ -5778,7 +5853,7 @@ "arguments": { "typename": "memory-backend-file" }, - "id": "libvirt-31" + "id": "libvirt-32" } { @@ -5843,7 +5918,7 @@ "type": "bool" } ], - "id": "libvirt-31" + "id": "libvirt-32" } { @@ -5851,7 +5926,7 @@ "arguments": { "typename": "memory-backend-memfd" }, - "id": "libvirt-32" + "id": "libvirt-33" } { @@ -5915,12 +5990,12 @@ "type": "bool" } ], - "id": "libvirt-32" + "id": "libvirt-33" } { "execute": "query-machines", - "id": "libvirt-33" + "id": "libvirt-34" } { @@ -6073,7 +6148,7 @@ "cpu-max": 1 } ], - "id": "libvirt-33" + "id": "libvirt-34" } { @@ -6081,7 +6156,7 @@ "arguments": { "typename": "pseries-4.0-machine" }, - "id": "libvirt-34" + "id": "libvirt-35" } { @@ -6280,12 +6355,12 @@ "type": "string" } ], - "id": "libvirt-34" + "id": "libvirt-35" } { "execute": "query-cpu-definitions", - "id": "libvirt-35" + "id": "libvirt-36" } { @@ -8481,34 +8556,34 @@ "static": false } ], - "id": "libvirt-35" + "id": "libvirt-36" } { "execute": "query-tpm-models", - "id": "libvirt-36" + "id": "libvirt-37" } { "return": [ ], - "id": "libvirt-36" + "id": "libvirt-37" } { "execute": "query-tpm-types", - "id": "libvirt-37" + "id": "libvirt-38" } { "return": [ ], - "id": "libvirt-37" + "id": "libvirt-38" } { "execute": "query-command-line-options", - "id": "libvirt-38" + "id": "libvirt-39" } { @@ -9651,12 +9726,12 @@ "option": "drive" } ], - "id": "libvirt-38" + "id": "libvirt-39" } { "execute": "query-migrate-capabilities", - "id": "libvirt-39" + "id": "libvirt-40" } { @@ -9730,12 +9805,12 @@ "capability": "x-ignore-shared" } ], - "id": "libvirt-39" + "id": "libvirt-40" } { "execute": "query-qmp-schema", - "id": "libvirt-40" + "id": "libvirt-41" } { @@ -21793,7 +21868,7 @@ ] } ], - "id": "libvirt-40" + "id": "libvirt-41" } { diff --git a/tests/qemucapabilitiesdata/caps_4.0.0.riscv32.replies b/tests/qemucapabilitiesdata/caps_4.0.0.riscv32.replies index c2ca623a0b..6f57e09f38 100644 --- a/tests/qemucapabilitiesdata/caps_4.0.0.riscv32.replies +++ b/tests/qemucapabilitiesdata/caps_4.0.0.riscv32.replies @@ -3554,13 +3554,88 @@ { "execute": "device-list-properties", "arguments": { - "typename": "ICH9-LPC" + "typename": "bochs-display" }, "id": "libvirt-26" } { - "id": "libvirt-26", + "return": [ + { + "name": "yres", + "type": "uint32" + }, + { + "name": "xmax", + "type": "uint32" + }, + { + "name": "big-endian-framebuffer", + "type": "bool" + }, + { + "name": "addr", + "description": "Slot and optional function number, example: 06.0 or 06", + "type": "int32" + }, + { + "name": "vgamem", + "type": "size" + }, + { + "name": "edid", + "type": "bool" + }, + { + "name": "ymax", + "type": "uint32" + }, + { + "name": "x-pcie-extcap-init", + "description": "on\/off", + "type": "bool" + }, + { + "name": "x-pcie-lnksta-dllla", + "description": "on\/off", + "type": "bool" + }, + { + "name": "command_serr_enable", + "description": "on\/off", + "type": "bool" + }, + { + "name": "multifunction", + "description": "on\/off", + "type": "bool" + }, + { + "name": "romfile", + "type": "str" + }, + { + "name": "rombar", + "type": "uint32" + }, + { + "name": "xres", + "type": "uint32" + } + ], + "id": "libvirt-26" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "ICH9-LPC" + }, + "id": "libvirt-27" +} + +{ + "id": "libvirt-27", "error": { "class": "DeviceNotFound", "desc": "Device 'ICH9-LPC' not found" @@ -3572,7 +3647,7 @@ "arguments": { "typename": "virtio-balloon-pci" }, - "id": "libvirt-27" + "id": "libvirt-28" } { @@ -3724,7 +3799,7 @@ "type": "str" } ], - "id": "libvirt-27" + "id": "libvirt-28" } { @@ -3732,11 +3807,11 @@ "arguments": { "typename": "virtio-balloon-ccw" }, - "id": "libvirt-28" + "id": "libvirt-29" } { - "id": "libvirt-28", + "id": "libvirt-29", "error": { "class": "DeviceNotFound", "desc": "Device 'virtio-balloon-ccw' not found" @@ -3748,7 +3823,7 @@ "arguments": { "typename": "virtio-balloon-device" }, - "id": "libvirt-29" + "id": "libvirt-30" } { @@ -3801,7 +3876,7 @@ "type": "bool" } ], - "id": "libvirt-29" + "id": "libvirt-30" } { @@ -3809,7 +3884,7 @@ "arguments": { "typename": "nec-usb-xhci" }, - "id": "libvirt-30" + "id": "libvirt-31" } { @@ -3889,7 +3964,7 @@ "type": "uint32" } ], - "id": "libvirt-30" + "id": "libvirt-31" } { @@ -3897,7 +3972,7 @@ "arguments": { "typename": "memory-backend-file" }, - "id": "libvirt-31" + "id": "libvirt-32" } { @@ -3962,7 +4037,7 @@ "type": "bool" } ], - "id": "libvirt-31" + "id": "libvirt-32" } { @@ -3970,7 +4045,7 @@ "arguments": { "typename": "memory-backend-memfd" }, - "id": "libvirt-32" + "id": "libvirt-33" } { @@ -4034,12 +4109,12 @@ "type": "bool" } ], - "id": "libvirt-32" + "id": "libvirt-33" } { "execute": "query-machines", - "id": "libvirt-33" + "id": "libvirt-34" } { @@ -4076,7 +4151,7 @@ "cpu-max": 1 } ], - "id": "libvirt-33" + "id": "libvirt-34" } { @@ -4084,7 +4159,7 @@ "arguments": { "typename": "virt-machine" }, - "id": "libvirt-34" + "id": "libvirt-35" } { @@ -4189,34 +4264,34 @@ "type": "bool" } ], - "id": "libvirt-34" + "id": "libvirt-35" } { "execute": "query-tpm-models", - "id": "libvirt-35" + "id": "libvirt-36" } { "return": [ ], - "id": "libvirt-35" + "id": "libvirt-36" } { "execute": "query-tpm-types", - "id": "libvirt-36" + "id": "libvirt-37" } { "return": [ ], - "id": "libvirt-36" + "id": "libvirt-37" } { "execute": "query-command-line-options", - "id": "libvirt-37" + "id": "libvirt-38" } { @@ -5488,12 +5563,12 @@ "option": "drive" } ], - "id": "libvirt-37" + "id": "libvirt-38" } { "execute": "query-migrate-capabilities", - "id": "libvirt-38" + "id": "libvirt-39" } { @@ -5567,12 +5642,12 @@ "capability": "x-ignore-shared" } ], - "id": "libvirt-38" + "id": "libvirt-39" } { "execute": "query-qmp-schema", - "id": "libvirt-39" + "id": "libvirt-40" } { @@ -17851,5 +17926,5 @@ ] } ], - "id": "libvirt-39" + "id": "libvirt-40" } diff --git a/tests/qemucapabilitiesdata/caps_4.0.0.riscv64.replies b/tests/qemucapabilitiesdata/caps_4.0.0.riscv64.replies index 0cccbdb4e0..a21bd4837b 100644 --- a/tests/qemucapabilitiesdata/caps_4.0.0.riscv64.replies +++ b/tests/qemucapabilitiesdata/caps_4.0.0.riscv64.replies @@ -3554,13 +3554,88 @@ { "execute": "device-list-properties", "arguments": { - "typename": "ICH9-LPC" + "typename": "bochs-display" }, "id": "libvirt-26" } { - "id": "libvirt-26", + "return": [ + { + "name": "yres", + "type": "uint32" + }, + { + "name": "xmax", + "type": "uint32" + }, + { + "name": "big-endian-framebuffer", + "type": "bool" + }, + { + "name": "addr", + "description": "Slot and optional function number, example: 06.0 or 06", + "type": "int32" + }, + { + "name": "vgamem", + "type": "size" + }, + { + "name": "edid", + "type": "bool" + }, + { + "name": "ymax", + "type": "uint32" + }, + { + "name": "x-pcie-extcap-init", + "description": "on\/off", + "type": "bool" + }, + { + "name": "x-pcie-lnksta-dllla", + "description": "on\/off", + "type": "bool" + }, + { + "name": "command_serr_enable", + "description": "on\/off", + "type": "bool" + }, + { + "name": "multifunction", + "description": "on\/off", + "type": "bool" + }, + { + "name": "romfile", + "type": "str" + }, + { + "name": "rombar", + "type": "uint32" + }, + { + "name": "xres", + "type": "uint32" + } + ], + "id": "libvirt-26" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "ICH9-LPC" + }, + "id": "libvirt-27" +} + +{ + "id": "libvirt-27", "error": { "class": "DeviceNotFound", "desc": "Device 'ICH9-LPC' not found" @@ -3572,7 +3647,7 @@ "arguments": { "typename": "virtio-balloon-pci" }, - "id": "libvirt-27" + "id": "libvirt-28" } { @@ -3724,7 +3799,7 @@ "type": "str" } ], - "id": "libvirt-27" + "id": "libvirt-28" } { @@ -3732,11 +3807,11 @@ "arguments": { "typename": "virtio-balloon-ccw" }, - "id": "libvirt-28" + "id": "libvirt-29" } { - "id": "libvirt-28", + "id": "libvirt-29", "error": { "class": "DeviceNotFound", "desc": "Device 'virtio-balloon-ccw' not found" @@ -3748,7 +3823,7 @@ "arguments": { "typename": "virtio-balloon-device" }, - "id": "libvirt-29" + "id": "libvirt-30" } { @@ -3801,7 +3876,7 @@ "type": "bool" } ], - "id": "libvirt-29" + "id": "libvirt-30" } { @@ -3809,7 +3884,7 @@ "arguments": { "typename": "nec-usb-xhci" }, - "id": "libvirt-30" + "id": "libvirt-31" } { @@ -3889,7 +3964,7 @@ "type": "uint32" } ], - "id": "libvirt-30" + "id": "libvirt-31" } { @@ -3897,7 +3972,7 @@ "arguments": { "typename": "memory-backend-file" }, - "id": "libvirt-31" + "id": "libvirt-32" } { @@ -3962,7 +4037,7 @@ "type": "bool" } ], - "id": "libvirt-31" + "id": "libvirt-32" } { @@ -3970,7 +4045,7 @@ "arguments": { "typename": "memory-backend-memfd" }, - "id": "libvirt-32" + "id": "libvirt-33" } { @@ -4034,12 +4109,12 @@ "type": "bool" } ], - "id": "libvirt-32" + "id": "libvirt-33" } { "execute": "query-machines", - "id": "libvirt-33" + "id": "libvirt-34" } { @@ -4076,7 +4151,7 @@ "cpu-max": 1 } ], - "id": "libvirt-33" + "id": "libvirt-34" } { @@ -4084,7 +4159,7 @@ "arguments": { "typename": "virt-machine" }, - "id": "libvirt-34" + "id": "libvirt-35" } { @@ -4189,34 +4264,34 @@ "type": "bool" } ], - "id": "libvirt-34" + "id": "libvirt-35" } { "execute": "query-tpm-models", - "id": "libvirt-35" + "id": "libvirt-36" } { "return": [ ], - "id": "libvirt-35" + "id": "libvirt-36" } { "execute": "query-tpm-types", - "id": "libvirt-36" + "id": "libvirt-37" } { "return": [ ], - "id": "libvirt-36" + "id": "libvirt-37" } { "execute": "query-command-line-options", - "id": "libvirt-37" + "id": "libvirt-38" } { @@ -5488,12 +5563,12 @@ "option": "drive" } ], - "id": "libvirt-37" + "id": "libvirt-38" } { "execute": "query-migrate-capabilities", - "id": "libvirt-38" + "id": "libvirt-39" } { @@ -5567,12 +5642,12 @@ "capability": "x-ignore-shared" } ], - "id": "libvirt-38" + "id": "libvirt-39" } { "execute": "query-qmp-schema", - "id": "libvirt-39" + "id": "libvirt-40" } { @@ -17851,5 +17926,5 @@ ] } ], - "id": "libvirt-39" + "id": "libvirt-40" } diff --git a/tests/qemucapabilitiesdata/caps_4.0.0.x86_64.replies b/tests/qemucapabilitiesdata/caps_4.0.0.x86_64.replies index b155e2a242..21d0e0a04f 100644 --- a/tests/qemucapabilitiesdata/caps_4.0.0.x86_64.replies +++ b/tests/qemucapabilitiesdata/caps_4.0.0.x86_64.replies @@ -4468,11 +4468,86 @@ { "execute": "device-list-properties", "arguments": { - "typename": "ICH9-LPC" + "typename": "bochs-display" }, "id": "libvirt-27" } +{ + "return": [ + { + "name": "yres", + "type": "uint32" + }, + { + "name": "xmax", + "type": "uint32" + }, + { + "name": "big-endian-framebuffer", + "type": "bool" + }, + { + "name": "addr", + "description": "Slot and optional function number, example: 06.0 or 06", + "type": "int32" + }, + { + "name": "vgamem", + "type": "size" + }, + { + "name": "edid", + "type": "bool" + }, + { + "name": "ymax", + "type": "uint32" + }, + { + "name": "x-pcie-extcap-init", + "description": "on\/off", + "type": "bool" + }, + { + "name": "x-pcie-lnksta-dllla", + "description": "on\/off", + "type": "bool" + }, + { + "name": "command_serr_enable", + "description": "on\/off", + "type": "bool" + }, + { + "name": "multifunction", + "description": "on\/off", + "type": "bool" + }, + { + "name": "romfile", + "type": "str" + }, + { + "name": "rombar", + "type": "uint32" + }, + { + "name": "xres", + "type": "uint32" + } + ], + "id": "libvirt-27" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "ICH9-LPC" + }, + "id": "libvirt-28" +} + { "return": [ { @@ -4566,7 +4641,7 @@ "type": "uint32" } ], - "id": "libvirt-27" + "id": "libvirt-28" } { @@ -4574,7 +4649,7 @@ "arguments": { "typename": "virtio-balloon-pci" }, - "id": "libvirt-28" + "id": "libvirt-29" } { @@ -4726,7 +4801,7 @@ "type": "str" } ], - "id": "libvirt-28" + "id": "libvirt-29" } { @@ -4734,11 +4809,11 @@ "arguments": { "typename": "virtio-balloon-ccw" }, - "id": "libvirt-29" + "id": "libvirt-30" } { - "id": "libvirt-29", + "id": "libvirt-30", "error": { "class": "DeviceNotFound", "desc": "Device 'virtio-balloon-ccw' not found" @@ -4750,7 +4825,7 @@ "arguments": { "typename": "virtio-balloon-device" }, - "id": "libvirt-30" + "id": "libvirt-31" } { @@ -4803,7 +4878,7 @@ "type": "bool" } ], - "id": "libvirt-30" + "id": "libvirt-31" } { @@ -4811,7 +4886,7 @@ "arguments": { "typename": "nec-usb-xhci" }, - "id": "libvirt-31" + "id": "libvirt-32" } { @@ -4891,7 +4966,7 @@ "type": "uint32" } ], - "id": "libvirt-31" + "id": "libvirt-32" } { @@ -4899,7 +4974,7 @@ "arguments": { "typename": "intel-iommu" }, - "id": "libvirt-32" + "id": "libvirt-33" } { @@ -4947,7 +5022,7 @@ "type": "uint8" } ], - "id": "libvirt-32" + "id": "libvirt-33" } { @@ -4955,7 +5030,7 @@ "arguments": { "typename": "mch" }, - "id": "libvirt-33" + "id": "libvirt-34" } { @@ -4998,7 +5073,7 @@ "type": "int32" } ], - "id": "libvirt-33" + "id": "libvirt-34" } { @@ -5006,7 +5081,7 @@ "arguments": { "typename": "nvdimm" }, - "id": "libvirt-34" + "id": "libvirt-35" } { @@ -5040,7 +5115,7 @@ "type": "uint64" } ], - "id": "libvirt-34" + "id": "libvirt-35" } { @@ -5048,7 +5123,7 @@ "arguments": { "typename": "memory-backend-file" }, - "id": "libvirt-35" + "id": "libvirt-36" } { @@ -5113,7 +5188,7 @@ "type": "bool" } ], - "id": "libvirt-35" + "id": "libvirt-36" } { @@ -5121,7 +5196,7 @@ "arguments": { "typename": "memory-backend-memfd" }, - "id": "libvirt-36" + "id": "libvirt-37" } { @@ -5185,7 +5260,7 @@ "type": "bool" } ], - "id": "libvirt-36" + "id": "libvirt-37" } { @@ -5193,7 +5268,7 @@ "arguments": { "typename": "max-x86_64-cpu" }, - "id": "libvirt-37" + "id": "libvirt-38" } { @@ -6311,12 +6386,12 @@ "type": "bool" } ], - "id": "libvirt-37" + "id": "libvirt-38" } { "execute": "query-machines", - "id": "libvirt-38" + "id": "libvirt-39" } { @@ -6535,12 +6610,12 @@ "alias": "q35" } ], - "id": "libvirt-38" + "id": "libvirt-39" } { "execute": "query-cpu-definitions", - "id": "libvirt-39" + "id": "libvirt-40" } { @@ -7057,12 +7132,12 @@ "migration-safe": true } ], - "id": "libvirt-39" + "id": "libvirt-40" } { "execute": "query-tpm-models", - "id": "libvirt-40" + "id": "libvirt-41" } { @@ -7070,12 +7145,12 @@ "tpm-crb", "tpm-tis" ], - "id": "libvirt-40" + "id": "libvirt-41" } { "execute": "query-tpm-types", - "id": "libvirt-41" + "id": "libvirt-42" } { @@ -7083,12 +7158,12 @@ "passthrough", "emulator" ], - "id": "libvirt-41" + "id": "libvirt-42" } { "execute": "query-command-line-options", - "id": "libvirt-42" + "id": "libvirt-43" } { @@ -8370,12 +8445,12 @@ "option": "drive" } ], - "id": "libvirt-42" + "id": "libvirt-43" } { "execute": "query-migrate-capabilities", - "id": "libvirt-43" + "id": "libvirt-44" } { @@ -8449,12 +8524,12 @@ "capability": "x-ignore-shared" } ], - "id": "libvirt-43" + "id": "libvirt-44" } { "execute": "query-qmp-schema", - "id": "libvirt-44" + "id": "libvirt-45" } { @@ -20919,16 +20994,16 @@ ] } ], - "id": "libvirt-44" + "id": "libvirt-45" } { "execute": "query-sev-capabilities", - "id": "libvirt-45" + "id": "libvirt-46" } { - "id": "libvirt-45", + "id": "libvirt-46", "error": { "class": "GenericError", "desc": "SEV feature is not available" @@ -20943,7 +21018,7 @@ "name": "host" } }, - "id": "libvirt-46" + "id": "libvirt-47" } { @@ -21147,7 +21222,7 @@ } } }, - "id": "libvirt-46" + "id": "libvirt-47" } { @@ -21353,7 +21428,7 @@ } } }, - "id": "libvirt-47" + "id": "libvirt-48" } { @@ -21632,7 +21707,7 @@ } } }, - "id": "libvirt-47" + "id": "libvirt-48" } { @@ -21646,7 +21721,7 @@ } } }, - "id": "libvirt-48" + "id": "libvirt-49" } { @@ -21850,7 +21925,7 @@ } } }, - "id": "libvirt-48" + "id": "libvirt-49" } { @@ -22056,7 +22131,7 @@ } } }, - "id": "libvirt-49" + "id": "libvirt-50" } { @@ -22335,7 +22410,7 @@ } } }, - "id": "libvirt-49" + "id": "libvirt-50" } { diff --git a/tests/qemucapabilitiesdata/caps_4.1.0.x86_64.replies b/tests/qemucapabilitiesdata/caps_4.1.0.x86_64.replies index 516e7139bd..b363d5a56e 100644 --- a/tests/qemucapabilitiesdata/caps_4.1.0.x86_64.replies +++ b/tests/qemucapabilitiesdata/caps_4.1.0.x86_64.replies @@ -4509,11 +4509,86 @@ { "execute": "device-list-properties", "arguments": { - "typename": "ICH9-LPC" + "typename": "bochs-display" }, "id": "libvirt-27" } +{ + "return": [ + { + "name": "yres", + "type": "uint32" + }, + { + "name": "xmax", + "type": "uint32" + }, + { + "name": "big-endian-framebuffer", + "type": "bool" + }, + { + "name": "addr", + "description": "Slot and optional function number, example: 06.0 or 06", + "type": "int32" + }, + { + "name": "vgamem", + "type": "size" + }, + { + "name": "edid", + "type": "bool" + }, + { + "name": "ymax", + "type": "uint32" + }, + { + "name": "x-pcie-extcap-init", + "description": "on\/off", + "type": "bool" + }, + { + "name": "x-pcie-lnksta-dllla", + "description": "on\/off", + "type": "bool" + }, + { + "name": "command_serr_enable", + "description": "on\/off", + "type": "bool" + }, + { + "name": "multifunction", + "description": "on\/off", + "type": "bool" + }, + { + "name": "romfile", + "type": "str" + }, + { + "name": "rombar", + "type": "uint32" + }, + { + "name": "xres", + "type": "uint32" + } + ], + "id": "libvirt-27" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "ICH9-LPC" + }, + "id": "libvirt-28" +} + { "return": [ { @@ -4607,7 +4682,7 @@ "type": "uint32" } ], - "id": "libvirt-27" + "id": "libvirt-28" } { @@ -4615,7 +4690,7 @@ "arguments": { "typename": "virtio-balloon-pci" }, - "id": "libvirt-28" + "id": "libvirt-29" } { @@ -4767,7 +4842,7 @@ "type": "bool" } ], - "id": "libvirt-28" + "id": "libvirt-29" } { @@ -4775,11 +4850,11 @@ "arguments": { "typename": "virtio-balloon-ccw" }, - "id": "libvirt-29" + "id": "libvirt-30" } { - "id": "libvirt-29", + "id": "libvirt-30", "error": { "class": "DeviceNotFound", "desc": "Device 'virtio-balloon-ccw' not found" @@ -4791,7 +4866,7 @@ "arguments": { "typename": "virtio-balloon-device" }, - "id": "libvirt-30" + "id": "libvirt-31" } { @@ -4844,7 +4919,7 @@ "type": "bool" } ], - "id": "libvirt-30" + "id": "libvirt-31" } { @@ -4852,7 +4927,7 @@ "arguments": { "typename": "nec-usb-xhci" }, - "id": "libvirt-31" + "id": "libvirt-32" } { @@ -4932,7 +5007,7 @@ "type": "uint32" } ], - "id": "libvirt-31" + "id": "libvirt-32" } { @@ -4940,7 +5015,7 @@ "arguments": { "typename": "intel-iommu" }, - "id": "libvirt-32" + "id": "libvirt-33" } { @@ -4988,7 +5063,7 @@ "type": "bool" } ], - "id": "libvirt-32" + "id": "libvirt-33" } { @@ -4996,7 +5071,7 @@ "arguments": { "typename": "mch" }, - "id": "libvirt-33" + "id": "libvirt-34" } { @@ -5039,7 +5114,7 @@ "type": "bool" } ], - "id": "libvirt-33" + "id": "libvirt-34" } { @@ -5047,7 +5122,7 @@ "arguments": { "typename": "nvdimm" }, - "id": "libvirt-34" + "id": "libvirt-35" } { @@ -5081,7 +5156,7 @@ "type": "int32" } ], - "id": "libvirt-34" + "id": "libvirt-35" } { @@ -5089,7 +5164,7 @@ "arguments": { "typename": "memory-backend-file" }, - "id": "libvirt-35" + "id": "libvirt-36" } { @@ -5154,7 +5229,7 @@ "type": "bool" } ], - "id": "libvirt-35" + "id": "libvirt-36" } { @@ -5162,7 +5237,7 @@ "arguments": { "typename": "memory-backend-memfd" }, - "id": "libvirt-36" + "id": "libvirt-37" } { @@ -5226,7 +5301,7 @@ "type": "int" } ], - "id": "libvirt-36" + "id": "libvirt-37" } { @@ -5234,7 +5309,7 @@ "arguments": { "typename": "max-x86_64-cpu" }, - "id": "libvirt-37" + "id": "libvirt-38" } { @@ -6360,12 +6435,12 @@ "type": "bool" } ], - "id": "libvirt-37" + "id": "libvirt-38" } { "execute": "query-machines", - "id": "libvirt-38" + "id": "libvirt-39" } { @@ -6599,12 +6674,12 @@ "cpu-max": 288 } ], - "id": "libvirt-38" + "id": "libvirt-39" } { "execute": "query-cpu-definitions", - "id": "libvirt-39" + "id": "libvirt-40" } { @@ -7138,12 +7213,12 @@ "migration-safe": true } ], - "id": "libvirt-39" + "id": "libvirt-40" } { "execute": "query-tpm-models", - "id": "libvirt-40" + "id": "libvirt-41" } { @@ -7151,12 +7226,12 @@ "tpm-crb", "tpm-tis" ], - "id": "libvirt-40" + "id": "libvirt-41" } { "execute": "query-tpm-types", - "id": "libvirt-41" + "id": "libvirt-42" } { @@ -7164,12 +7239,12 @@ "passthrough", "emulator" ], - "id": "libvirt-41" + "id": "libvirt-42" } { "execute": "query-command-line-options", - "id": "libvirt-42" + "id": "libvirt-43" } { @@ -8439,12 +8514,12 @@ "option": "drive" } ], - "id": "libvirt-42" + "id": "libvirt-43" } { "execute": "query-migrate-capabilities", - "id": "libvirt-43" + "id": "libvirt-44" } { @@ -8518,12 +8593,12 @@ "capability": "x-ignore-shared" } ], - "id": "libvirt-43" + "id": "libvirt-44" } { "execute": "query-qmp-schema", - "id": "libvirt-44" + "id": "libvirt-45" } { @@ -21037,16 +21112,16 @@ ] } ], - "id": "libvirt-44" + "id": "libvirt-45" } { "execute": "query-sev-capabilities", - "id": "libvirt-45" + "id": "libvirt-46" } { - "id": "libvirt-45", + "id": "libvirt-46", "error": { "class": "GenericError", "desc": "SEV feature is not available" @@ -21061,7 +21136,7 @@ "name": "host" } }, - "id": "libvirt-46" + "id": "libvirt-47" } { @@ -21267,7 +21342,7 @@ } } }, - "id": "libvirt-46" + "id": "libvirt-47" } { @@ -21281,7 +21356,7 @@ } } }, - "id": "libvirt-47" + "id": "libvirt-48" } { @@ -21487,7 +21562,7 @@ } } }, - "id": "libvirt-47" + "id": "libvirt-48" } { -- 2.20.1

From: Julio Faracco <jcfaracco@gmail.com> New test case was added to cover 'xres' and 'yres' properties for QXL model due to latest QEMU version. Signed-off-by: Julio Faracco <jcfaracco@gmail.com> --- .../video-qxl-resolution.x86_64-latest.args | 35 +++++++++++++++++++ .../qemuxml2argvdata/video-qxl-resolution.xml | 33 +++++++++++++++++ tests/qemuxml2argvtest.c | 1 + .../video-qxl-resolution.x86_64-latest.xml | 33 +++++++++++++++++ tests/qemuxml2xmltest.c | 1 + 5 files changed, 103 insertions(+) create mode 100644 tests/qemuxml2argvdata/video-qxl-resolution.x86_64-latest.args create mode 100644 tests/qemuxml2argvdata/video-qxl-resolution.xml create mode 100644 tests/qemuxml2xmloutdata/video-qxl-resolution.x86_64-latest.xml diff --git a/tests/qemuxml2argvdata/video-qxl-resolution.x86_64-latest.args b/tests/qemuxml2argvdata/video-qxl-resolution.x86_64-latest.args new file mode 100644 index 0000000000..73036521c7 --- /dev/null +++ b/tests/qemuxml2argvdata/video-qxl-resolution.x86_64-latest.args @@ -0,0 +1,35 @@ +LC_ALL=C \ +PATH=/bin \ +HOME=/tmp/lib/domain--1-QEMUGuest1 \ +USER=test \ +LOGNAME=test \ +XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \ +XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \ +XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \ +QEMU_AUDIO_DRV=none \ +/usr/bin/qemu-system-x86_64 \ +-name guest=QEMUGuest1,debug-threads=on \ +-S \ +-object secret,id=masterKey0,format=raw,\ +file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \ +-machine pc,accel=tcg,usb=off,dump-guest-core=off \ +-m 214 \ +-overcommit mem-lock=off \ +-smp 1,sockets=1,cores=1,threads=1 \ +-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \ +-display none \ +-no-user-config \ +-nodefaults \ +-chardev socket,id=charmonitor,fd=1729,server,nowait \ +-mon chardev=charmonitor,id=monitor,mode=control \ +-rtc base=utc \ +-no-shutdown \ +-no-acpi \ +-boot strict=on \ +-device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 \ +-device qxl-vga,id=video0,ram_size=67108864,vram_size=67108864,xres=1280,\ +yres=720,vram64_size_mb=0,vgamem_mb=8,max_outputs=1,bus=pci.0,addr=0x2 \ +-device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x3 \ +-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,\ +resourcecontrol=deny \ +-msg timestamp=on diff --git a/tests/qemuxml2argvdata/video-qxl-resolution.xml b/tests/qemuxml2argvdata/video-qxl-resolution.xml new file mode 100644 index 0000000000..3ecdbedc02 --- /dev/null +++ b/tests/qemuxml2argvdata/video-qxl-resolution.xml @@ -0,0 +1,33 @@ +<domain type='qemu'> + <name>QEMUGuest1</name> + <uuid>c7a5fdbd-edaf-9455-926a-d65c16db1809</uuid> + <memory unit='KiB'>219136</memory> + <currentMemory unit='KiB'>219136</currentMemory> + <vcpu placement='static'>1</vcpu> + <os> + <type arch='x86_64' machine='pc'>hvm</type> + <boot dev='hd'/> + </os> + <clock offset='utc'/> + <on_poweroff>destroy</on_poweroff> + <on_reboot>restart</on_reboot> + <on_crash>destroy</on_crash> + <devices> + <emulator>/usr/bin/qemu-system-x86_64</emulator> + <controller type='pci' index='0' model='pci-root'/> + <controller type='usb' index='0' model='piix3-uhci'> + <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/> + </controller> + <input type='mouse' bus='ps2'/> + <input type='keyboard' bus='ps2'/> + <video> + <model type='qxl' ram='65536' vram='65536' vgamem='8192' heads='1' primary='yes'> + <resolution x='1280' y='720'/> + </model> + <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/> + </video> + <memballoon model='virtio'> + <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> + </memballoon> + </devices> +</domain> diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c index 9395cc19a2..1c3e3a8487 100644 --- a/tests/qemuxml2argvtest.c +++ b/tests/qemuxml2argvtest.c @@ -2014,6 +2014,7 @@ mymain(void) QEMU_CAPS_DEVICE_VIDEO_PRIMARY, QEMU_CAPS_DEVICE_QXL, QEMU_CAPS_QXL_MAX_OUTPUTS); + DO_TEST_CAPS_LATEST("video-qxl-resolution"); DO_TEST("video-virtio-gpu-device", QEMU_CAPS_DEVICE_VIRTIO_GPU, QEMU_CAPS_DEVICE_VIDEO_PRIMARY); diff --git a/tests/qemuxml2xmloutdata/video-qxl-resolution.x86_64-latest.xml b/tests/qemuxml2xmloutdata/video-qxl-resolution.x86_64-latest.xml new file mode 100644 index 0000000000..3ecdbedc02 --- /dev/null +++ b/tests/qemuxml2xmloutdata/video-qxl-resolution.x86_64-latest.xml @@ -0,0 +1,33 @@ +<domain type='qemu'> + <name>QEMUGuest1</name> + <uuid>c7a5fdbd-edaf-9455-926a-d65c16db1809</uuid> + <memory unit='KiB'>219136</memory> + <currentMemory unit='KiB'>219136</currentMemory> + <vcpu placement='static'>1</vcpu> + <os> + <type arch='x86_64' machine='pc'>hvm</type> + <boot dev='hd'/> + </os> + <clock offset='utc'/> + <on_poweroff>destroy</on_poweroff> + <on_reboot>restart</on_reboot> + <on_crash>destroy</on_crash> + <devices> + <emulator>/usr/bin/qemu-system-x86_64</emulator> + <controller type='pci' index='0' model='pci-root'/> + <controller type='usb' index='0' model='piix3-uhci'> + <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/> + </controller> + <input type='mouse' bus='ps2'/> + <input type='keyboard' bus='ps2'/> + <video> + <model type='qxl' ram='65536' vram='65536' vgamem='8192' heads='1' primary='yes'> + <resolution x='1280' y='720'/> + </model> + <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/> + </video> + <memballoon model='virtio'> + <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> + </memballoon> + </devices> +</domain> diff --git a/tests/qemuxml2xmltest.c b/tests/qemuxml2xmltest.c index 5f6a3618cd..9ea94815ae 100644 --- a/tests/qemuxml2xmltest.c +++ b/tests/qemuxml2xmltest.c @@ -1207,6 +1207,7 @@ mymain(void) QEMU_CAPS_DEVICE_QXL); DO_TEST("video-qxl-heads", NONE); DO_TEST("video-qxl-noheads", NONE); + DO_TEST_CAPS_LATEST("video-qxl-resolution"); DO_TEST("video-virtio-gpu-secondary", NONE); DO_TEST("video-virtio-gpu-ccw", QEMU_CAPS_CCW, -- 2.20.1

From: Julio Faracco <jcfaracco@gmail.com> New test case was added to cover 'xres' and 'yres' properties for Virtio model due to latest QEMU version. Signed-off-by: Julio Faracco <jcfaracco@gmail.com> --- ...o-virtio-gpu-resolution.x86_64-latest.args | 35 +++++++++++++++++++ .../video-virtio-gpu-resolution.xml | 33 +++++++++++++++++ tests/qemuxml2argvtest.c | 1 + ...eo-virtio-gpu-resolution.x86_64-latest.xml | 33 +++++++++++++++++ tests/qemuxml2xmltest.c | 1 + 5 files changed, 103 insertions(+) create mode 100644 tests/qemuxml2argvdata/video-virtio-gpu-resolution.x86_64-latest.args create mode 100644 tests/qemuxml2argvdata/video-virtio-gpu-resolution.xml create mode 100644 tests/qemuxml2xmloutdata/video-virtio-gpu-resolution.x86_64-latest.xml diff --git a/tests/qemuxml2argvdata/video-virtio-gpu-resolution.x86_64-latest.args b/tests/qemuxml2argvdata/video-virtio-gpu-resolution.x86_64-latest.args new file mode 100644 index 0000000000..20702a4c81 --- /dev/null +++ b/tests/qemuxml2argvdata/video-virtio-gpu-resolution.x86_64-latest.args @@ -0,0 +1,35 @@ +LC_ALL=C \ +PATH=/bin \ +HOME=/tmp/lib/domain--1-QEMUGuest1 \ +USER=test \ +LOGNAME=test \ +XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \ +XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \ +XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \ +QEMU_AUDIO_DRV=none \ +/usr/bin/qemu-system-x86_64 \ +-name guest=QEMUGuest1,debug-threads=on \ +-S \ +-object secret,id=masterKey0,format=raw,\ +file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \ +-machine pc,accel=tcg,usb=off,dump-guest-core=off \ +-m 1024 \ +-overcommit mem-lock=off \ +-smp 1,sockets=1,cores=1,threads=1 \ +-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \ +-display none \ +-no-user-config \ +-nodefaults \ +-chardev socket,id=charmonitor,fd=1729,server,nowait \ +-mon chardev=charmonitor,id=monitor,mode=control \ +-rtc base=utc \ +-no-shutdown \ +-no-acpi \ +-boot strict=on \ +-device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 \ +-device virtio-vga,id=video0,max_outputs=1,xres=1280,yres=720,\ +bus=pci.0,addr=0x2 \ +-device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x3 \ +-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,\ +resourcecontrol=deny \ +-msg timestamp=on diff --git a/tests/qemuxml2argvdata/video-virtio-gpu-resolution.xml b/tests/qemuxml2argvdata/video-virtio-gpu-resolution.xml new file mode 100644 index 0000000000..2641a18711 --- /dev/null +++ b/tests/qemuxml2argvdata/video-virtio-gpu-resolution.xml @@ -0,0 +1,33 @@ +<domain type='qemu'> + <name>QEMUGuest1</name> + <uuid>c7a5fdbd-edaf-9455-926a-d65c16db1809</uuid> + <memory unit='KiB'>1048576</memory> + <currentMemory unit='KiB'>1048576</currentMemory> + <vcpu placement='static'>1</vcpu> + <os> + <type arch='x86_64' machine='pc'>hvm</type> + <boot dev='hd'/> + </os> + <clock offset='utc'/> + <on_poweroff>destroy</on_poweroff> + <on_reboot>restart</on_reboot> + <on_crash>destroy</on_crash> + <devices> + <emulator>/usr/bin/qemu-system-x86_64</emulator> + <controller type='usb' index='0' model='piix3-uhci'> + <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/> + </controller> + <controller type='pci' index='0' model='pci-root'/> + <input type='mouse' bus='ps2'/> + <input type='keyboard' bus='ps2'/> + <video> + <model type='virtio' heads='1' primary='yes'> + <resolution x='1280' y='720'/> + </model> + <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/> + </video> + <memballoon model='virtio'> + <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> + </memballoon> + </devices> +</domain> diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c index 1c3e3a8487..2e46dbd177 100644 --- a/tests/qemuxml2argvtest.c +++ b/tests/qemuxml2argvtest.c @@ -2037,6 +2037,7 @@ mymain(void) DO_TEST("video-virtio-gpu-secondary", QEMU_CAPS_DEVICE_VIRTIO_GPU, QEMU_CAPS_DEVICE_VIDEO_PRIMARY); + DO_TEST_CAPS_LATEST("video-virtio-gpu-resolution"); DO_TEST("video-virtio-vga", QEMU_CAPS_DEVICE_VIRTIO_GPU, QEMU_CAPS_DEVICE_VIRTIO_VGA, diff --git a/tests/qemuxml2xmloutdata/video-virtio-gpu-resolution.x86_64-latest.xml b/tests/qemuxml2xmloutdata/video-virtio-gpu-resolution.x86_64-latest.xml new file mode 100644 index 0000000000..2641a18711 --- /dev/null +++ b/tests/qemuxml2xmloutdata/video-virtio-gpu-resolution.x86_64-latest.xml @@ -0,0 +1,33 @@ +<domain type='qemu'> + <name>QEMUGuest1</name> + <uuid>c7a5fdbd-edaf-9455-926a-d65c16db1809</uuid> + <memory unit='KiB'>1048576</memory> + <currentMemory unit='KiB'>1048576</currentMemory> + <vcpu placement='static'>1</vcpu> + <os> + <type arch='x86_64' machine='pc'>hvm</type> + <boot dev='hd'/> + </os> + <clock offset='utc'/> + <on_poweroff>destroy</on_poweroff> + <on_reboot>restart</on_reboot> + <on_crash>destroy</on_crash> + <devices> + <emulator>/usr/bin/qemu-system-x86_64</emulator> + <controller type='usb' index='0' model='piix3-uhci'> + <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/> + </controller> + <controller type='pci' index='0' model='pci-root'/> + <input type='mouse' bus='ps2'/> + <input type='keyboard' bus='ps2'/> + <video> + <model type='virtio' heads='1' primary='yes'> + <resolution x='1280' y='720'/> + </model> + <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/> + </video> + <memballoon model='virtio'> + <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> + </memballoon> + </devices> +</domain> diff --git a/tests/qemuxml2xmltest.c b/tests/qemuxml2xmltest.c index 9ea94815ae..9e6c4345f1 100644 --- a/tests/qemuxml2xmltest.c +++ b/tests/qemuxml2xmltest.c @@ -1223,6 +1223,7 @@ mymain(void) QEMU_CAPS_VIRTIO_GPU_MAX_OUTPUTS, QEMU_CAPS_VNC, QEMU_CAPS_DEVICE_VIRTIO_GPU_CCW); + DO_TEST_CAPS_LATEST("video-virtio-gpu-resolution"); DO_TEST("video-none-device", NONE); DO_TEST_CAPS_LATEST("intel-iommu"); -- 2.20.1

From: Julio Faracco <jcfaracco@gmail.com> New test case was added to cover 'xres' and 'yres' properties for Bochs model due to latest QEMU version. Signed-off-by: Julio Faracco <jcfaracco@gmail.com> --- ...ochs-display-resolution.x86_64-latest.args | 35 +++++++++++++++++++ .../video-bochs-display-resolution.xml | 33 +++++++++++++++++ tests/qemuxml2argvtest.c | 1 + ...bochs-display-resolution.x86_64-latest.xml | 33 +++++++++++++++++ tests/qemuxml2xmltest.c | 2 ++ 5 files changed, 104 insertions(+) create mode 100644 tests/qemuxml2argvdata/video-bochs-display-resolution.x86_64-latest.args create mode 100644 tests/qemuxml2argvdata/video-bochs-display-resolution.xml create mode 100644 tests/qemuxml2xmloutdata/video-bochs-display-resolution.x86_64-latest.xml diff --git a/tests/qemuxml2argvdata/video-bochs-display-resolution.x86_64-latest.args b/tests/qemuxml2argvdata/video-bochs-display-resolution.x86_64-latest.args new file mode 100644 index 0000000000..48e58d839f --- /dev/null +++ b/tests/qemuxml2argvdata/video-bochs-display-resolution.x86_64-latest.args @@ -0,0 +1,35 @@ +LC_ALL=C \ +PATH=/bin \ +HOME=/tmp/lib/domain--1-QEMUGuest1 \ +USER=test \ +LOGNAME=test \ +XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \ +XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \ +XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \ +QEMU_AUDIO_DRV=none \ +/usr/bin/qemu-system-x86_64 \ +-name guest=QEMUGuest1,debug-threads=on \ +-S \ +-object secret,id=masterKey0,format=raw,\ +file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \ +-machine pc,accel=tcg,usb=off,dump-guest-core=off \ +-m 1024 \ +-overcommit mem-lock=off \ +-smp 1,sockets=1,cores=1,threads=1 \ +-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \ +-display none \ +-no-user-config \ +-nodefaults \ +-chardev socket,id=charmonitor,fd=1729,server,nowait \ +-mon chardev=charmonitor,id=monitor,mode=control \ +-rtc base=utc \ +-no-shutdown \ +-no-acpi \ +-boot strict=on \ +-device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 \ +-device bochs-display,id=video0,vgamem=16384k,xres=1280,yres=720,\ +bus=pci.0,addr=0x2 \ +-device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x3 \ +-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,\ +resourcecontrol=deny \ +-msg timestamp=on diff --git a/tests/qemuxml2argvdata/video-bochs-display-resolution.xml b/tests/qemuxml2argvdata/video-bochs-display-resolution.xml new file mode 100644 index 0000000000..f21d9955f3 --- /dev/null +++ b/tests/qemuxml2argvdata/video-bochs-display-resolution.xml @@ -0,0 +1,33 @@ +<domain type='qemu'> + <name>QEMUGuest1</name> + <uuid>c7a5fdbd-edaf-9455-926a-d65c16db1809</uuid> + <memory unit='KiB'>1048576</memory> + <currentMemory unit='KiB'>1048576</currentMemory> + <vcpu placement='static'>1</vcpu> + <os> + <type arch='x86_64' machine='pc'>hvm</type> + <boot dev='hd'/> + </os> + <clock offset='utc'/> + <on_poweroff>destroy</on_poweroff> + <on_reboot>restart</on_reboot> + <on_crash>destroy</on_crash> + <devices> + <emulator>/usr/bin/qemu-system-x86_64</emulator> + <controller type='usb' index='0' model='piix3-uhci'> + <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/> + </controller> + <controller type='pci' index='0' model='pci-root'/> + <input type='mouse' bus='ps2'/> + <input type='keyboard' bus='ps2'/> + <video> + <model type='bochs' vram='16384' heads='1' primary='yes'> + <resolution x='1280' y='720'/> + </model> + <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/> + </video> + <memballoon model='virtio'> + <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> + </memballoon> + </devices> +</domain> diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c index 2e46dbd177..f68c31d5e9 100644 --- a/tests/qemuxml2argvtest.c +++ b/tests/qemuxml2argvtest.c @@ -2044,6 +2044,7 @@ mymain(void) QEMU_CAPS_DEVICE_VIDEO_PRIMARY, QEMU_CAPS_VIRTIO_GPU_MAX_OUTPUTS); DO_TEST_CAPS_LATEST("video-bochs-display-device"); + DO_TEST_CAPS_LATEST("video-bochs-display-resolution"); DO_TEST("video-none-device", QEMU_CAPS_VNC); DO_TEST_PARSE_ERROR("video-invalid-multiple-devices", NONE); diff --git a/tests/qemuxml2xmloutdata/video-bochs-display-resolution.x86_64-latest.xml b/tests/qemuxml2xmloutdata/video-bochs-display-resolution.x86_64-latest.xml new file mode 100644 index 0000000000..f21d9955f3 --- /dev/null +++ b/tests/qemuxml2xmloutdata/video-bochs-display-resolution.x86_64-latest.xml @@ -0,0 +1,33 @@ +<domain type='qemu'> + <name>QEMUGuest1</name> + <uuid>c7a5fdbd-edaf-9455-926a-d65c16db1809</uuid> + <memory unit='KiB'>1048576</memory> + <currentMemory unit='KiB'>1048576</currentMemory> + <vcpu placement='static'>1</vcpu> + <os> + <type arch='x86_64' machine='pc'>hvm</type> + <boot dev='hd'/> + </os> + <clock offset='utc'/> + <on_poweroff>destroy</on_poweroff> + <on_reboot>restart</on_reboot> + <on_crash>destroy</on_crash> + <devices> + <emulator>/usr/bin/qemu-system-x86_64</emulator> + <controller type='usb' index='0' model='piix3-uhci'> + <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/> + </controller> + <controller type='pci' index='0' model='pci-root'/> + <input type='mouse' bus='ps2'/> + <input type='keyboard' bus='ps2'/> + <video> + <model type='bochs' vram='16384' heads='1' primary='yes'> + <resolution x='1280' y='720'/> + </model> + <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/> + </video> + <memballoon model='virtio'> + <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> + </memballoon> + </devices> +</domain> diff --git a/tests/qemuxml2xmltest.c b/tests/qemuxml2xmltest.c index 9e6c4345f1..3078355019 100644 --- a/tests/qemuxml2xmltest.c +++ b/tests/qemuxml2xmltest.c @@ -1224,6 +1224,8 @@ mymain(void) QEMU_CAPS_VNC, QEMU_CAPS_DEVICE_VIRTIO_GPU_CCW); DO_TEST_CAPS_LATEST("video-virtio-gpu-resolution"); + + DO_TEST_CAPS_LATEST("video-bochs-display-resolution"); DO_TEST("video-none-device", NONE); DO_TEST_CAPS_LATEST("intel-iommu"); -- 2.20.1

From: Julio Faracco <jcfaracco@gmail.com> New test case was added to cover 'xres' and 'yres' properties for VGA model due to latest QEMU version. Signed-off-by: Julio Faracco <jcfaracco@gmail.com> --- tests/qemuxml2argvtest.c | 1 + tests/qemuxml2xmltest.c | 1 + 2 files changed, 2 insertions(+) diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c index f68c31d5e9..66b63925d2 100644 --- a/tests/qemuxml2argvtest.c +++ b/tests/qemuxml2argvtest.c @@ -1987,6 +1987,7 @@ mymain(void) QEMU_CAPS_DEVICE_VIDEO_PRIMARY); DO_TEST("video-vga-device-vgamem", QEMU_CAPS_DEVICE_VGA, QEMU_CAPS_DEVICE_VIDEO_PRIMARY, QEMU_CAPS_VGA_VGAMEM); + DO_TEST_CAPS_LATEST("video-vga-resolution"); DO_TEST("video-qxl-nodevice", QEMU_CAPS_DEVICE_QXL); DO_TEST("video-qxl-device", QEMU_CAPS_DEVICE_QXL, diff --git a/tests/qemuxml2xmltest.c b/tests/qemuxml2xmltest.c index 3078355019..ac537767ba 100644 --- a/tests/qemuxml2xmltest.c +++ b/tests/qemuxml2xmltest.c @@ -1200,6 +1200,7 @@ mymain(void) DO_TEST("acpi-table", NONE); + DO_TEST_CAPS_LATEST("video-vga-resolution"); DO_TEST("video-device-pciaddr-default", QEMU_CAPS_KVM, QEMU_CAPS_VNC, -- 2.20.1

This patch is missing XML files for VGA test case. I will wait for review until submit a V3. -- Julio Cesar Faracco Em sex, 30 de ago de 2019 às 18:43, <jcfaracco@gmail.com> escreveu:
From: Julio Faracco <jcfaracco@gmail.com>
New test case was added to cover 'xres' and 'yres' properties for VGA model due to latest QEMU version.
Signed-off-by: Julio Faracco <jcfaracco@gmail.com> --- tests/qemuxml2argvtest.c | 1 + tests/qemuxml2xmltest.c | 1 + 2 files changed, 2 insertions(+)
diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c index f68c31d5e9..66b63925d2 100644 --- a/tests/qemuxml2argvtest.c +++ b/tests/qemuxml2argvtest.c @@ -1987,6 +1987,7 @@ mymain(void) QEMU_CAPS_DEVICE_VIDEO_PRIMARY); DO_TEST("video-vga-device-vgamem", QEMU_CAPS_DEVICE_VGA, QEMU_CAPS_DEVICE_VIDEO_PRIMARY, QEMU_CAPS_VGA_VGAMEM); + DO_TEST_CAPS_LATEST("video-vga-resolution"); DO_TEST("video-qxl-nodevice", QEMU_CAPS_DEVICE_QXL); DO_TEST("video-qxl-device", QEMU_CAPS_DEVICE_QXL, diff --git a/tests/qemuxml2xmltest.c b/tests/qemuxml2xmltest.c index 3078355019..ac537767ba 100644 --- a/tests/qemuxml2xmltest.c +++ b/tests/qemuxml2xmltest.c @@ -1200,6 +1200,7 @@ mymain(void)
DO_TEST("acpi-table", NONE);
+ DO_TEST_CAPS_LATEST("video-vga-resolution"); DO_TEST("video-device-pciaddr-default", QEMU_CAPS_KVM, QEMU_CAPS_VNC, -- 2.20.1

On 8/30/19 5:40 PM, jcfaracco@gmail.com wrote:
From: Julio Faracco <jcfaracco@gmail.com>
This serie adds 'xres' and 'yres' QEMU display properties into a new element called 'resolution'. This element is covered by model element:
<model type='foo'> <resolution x='800' y='600'/> </model>
Only types VGA, QXL, Virtio and Bochs support passing resolution to driver. That's why some test cases were added too.
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1485793
Hi Julio, thanks for working on this! The XML looks fine to me As a general suggestion, if you send a series and forgot to add XML files like for this one, better IMO to send a v2 straight away. Makes it easier for reviewers to pull the patches down and test them directly For formatting the series I think this patch is a good guide, make domain_conf.c changes self contained with docs/ and a test/ addition https://www.redhat.com/archives/libvir-list/2019-May/msg00820.html I don't think hardcoding the video model support checks is really worth it in this case. It complicates the code and testing, only for the gain of catching an error at XML define time vs startup time. IMO for this case it is fine to just unconditionally pass xres/yres to the -device string, and let qemu fail if it's not supported. This simplifies the qemu_command.c code, and then you can use a single test case to get code coverage there. All the qemu_capabilities changes can then be dropped. Others may have different opinions though I'll add some specific inline comments too Thanks, Cole
Julio Faracco (10): docs: Adding 'xres' and 'yres' into qxl XML definition qemu: Include {xres,yres} QEMU capabilities for video models conf: Adding resolution property for model element qemu: Include {xres,yres} for QEMU command line tests: Include {xres,yres} QEMU capabilities into tests tests: Include bochs-display as capability test too tests: Introduce resolution test for QXL model tests: Introduce resolution test for Virtio model tests: Introduce resolution test for Bochs model tests: Introduce resolution test for VGA model
docs/schemas/domaincommon.rng | 10 ++ src/conf/domain_conf.c | 75 +++++++- src/conf/domain_conf.h | 5 + src/conf/virconftypes.h | 3 + src/qemu/qemu_capabilities.c | 16 ++ src/qemu/qemu_capabilities.h | 2 + src/qemu/qemu_command.c | 20 +++ .../caps_2.10.0.aarch64.xml | 2 + .../caps_2.10.0.ppc64.xml | 2 + .../caps_2.10.0.s390x.xml | 2 + .../caps_2.10.0.x86_64.xml | 2 + .../caps_2.11.0.s390x.xml | 2 + .../caps_2.11.0.x86_64.xml | 2 + .../caps_2.12.0.aarch64.xml | 2 + .../caps_2.12.0.ppc64.xml | 2 + .../caps_2.12.0.s390x.xml | 2 + .../caps_2.12.0.x86_64.xml | 2 + .../caps_3.0.0.ppc64.replies | 139 +++++++++++---- .../qemucapabilitiesdata/caps_3.0.0.ppc64.xml | 2 + .../caps_3.0.0.riscv32.xml | 2 + .../caps_3.0.0.riscv64.xml | 2 + .../qemucapabilitiesdata/caps_3.0.0.s390x.xml | 2 + .../caps_3.0.0.x86_64.replies | 167 +++++++++++++----- .../caps_3.0.0.x86_64.xml | 2 + .../caps_3.1.0.ppc64.replies | 139 +++++++++++---- .../qemucapabilitiesdata/caps_3.1.0.ppc64.xml | 2 + .../caps_3.1.0.x86_64.replies | 167 +++++++++++++----- .../caps_3.1.0.x86_64.xml | 2 + .../caps_4.0.0.aarch64.replies | 139 +++++++++++---- .../caps_4.0.0.aarch64.xml | 2 + .../caps_4.0.0.ppc64.replies | 139 +++++++++++---- .../qemucapabilitiesdata/caps_4.0.0.ppc64.xml | 2 + .../caps_4.0.0.riscv32.replies | 131 +++++++++++--- .../caps_4.0.0.riscv32.xml | 2 + .../caps_4.0.0.riscv64.replies | 131 +++++++++++--- .../caps_4.0.0.riscv64.xml | 2 + .../qemucapabilitiesdata/caps_4.0.0.s390x.xml | 2 + .../caps_4.0.0.x86_64.replies | 167 +++++++++++++----- .../caps_4.0.0.x86_64.xml | 2 + .../caps_4.1.0.x86_64.replies | 159 ++++++++++++----- .../caps_4.1.0.x86_64.xml | 2 + ...ochs-display-resolution.x86_64-latest.args | 35 ++++ .../video-bochs-display-resolution.xml | 33 ++++ .../video-qxl-resolution.x86_64-latest.args | 35 ++++ .../qemuxml2argvdata/video-qxl-resolution.xml | 33 ++++ ...o-virtio-gpu-resolution.x86_64-latest.args | 35 ++++ .../video-virtio-gpu-resolution.xml | 33 ++++ tests/qemuxml2argvtest.c | 4 + ...bochs-display-resolution.x86_64-latest.xml | 33 ++++ .../video-qxl-resolution.x86_64-latest.xml | 33 ++++ ...eo-virtio-gpu-resolution.x86_64-latest.xml | 33 ++++ tests/qemuxml2xmltest.c | 5 + 52 files changed, 1604 insertions(+), 365 deletions(-) create mode 100644 tests/qemuxml2argvdata/video-bochs-display-resolution.x86_64-latest.args create mode 100644 tests/qemuxml2argvdata/video-bochs-display-resolution.xml create mode 100644 tests/qemuxml2argvdata/video-qxl-resolution.x86_64-latest.args create mode 100644 tests/qemuxml2argvdata/video-qxl-resolution.xml create mode 100644 tests/qemuxml2argvdata/video-virtio-gpu-resolution.x86_64-latest.args create mode 100644 tests/qemuxml2argvdata/video-virtio-gpu-resolution.xml create mode 100644 tests/qemuxml2xmloutdata/video-bochs-display-resolution.x86_64-latest.xml create mode 100644 tests/qemuxml2xmloutdata/video-qxl-resolution.x86_64-latest.xml create mode 100644 tests/qemuxml2xmloutdata/video-virtio-gpu-resolution.x86_64-latest.xml
- Cole
participants (3)
-
Cole Robinson
-
jcfaracco@gmail.com
-
Julio Faracco