From nobody Fri Dec 27 12:55:11 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.libvirt.org designates 8.43.85.245 as permitted sender) client-ip=8.43.85.245; envelope-from=devel-bounces@lists.libvirt.org; helo=lists.libvirt.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of lists.libvirt.org designates 8.43.85.245 as permitted sender) smtp.mailfrom=devel-bounces@lists.libvirt.org; dmarc=fail(p=reject dis=none) header.from=linux.ibm.com Return-Path: Received: from lists.libvirt.org (lists.libvirt.org [8.43.85.245]) by mx.zohomail.com with SMTPS id 1731433505348253.62049963145319; Tue, 12 Nov 2024 09:45:05 -0800 (PST) Received: by lists.libvirt.org (Postfix, from userid 996) id 371DF1879; Tue, 12 Nov 2024 12:45:04 -0500 (EST) Received: from lists.libvirt.org (localhost [IPv6:::1]) by lists.libvirt.org (Postfix) with ESMTP id 400DC1798; Tue, 12 Nov 2024 12:43:10 -0500 (EST) Received: by lists.libvirt.org (Postfix, from userid 996) id AC0081461; Tue, 12 Nov 2024 12:43:02 -0500 (EST) Received: from mx0b-001b2d01.pphosted.com (mx0b-001b2d01.pphosted.com [148.163.158.5]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by lists.libvirt.org (Postfix) with ESMTPS id 624E71450 for ; Tue, 12 Nov 2024 12:43:01 -0500 (EST) Received: from pps.filterd (m0356516.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 4ACGedXK003515 for ; Tue, 12 Nov 2024 17:43:01 GMT Received: from ppma11.dal12v.mail.ibm.com (db.9e.1632.ip4.static.sl-reverse.com [50.22.158.219]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 42var408jd-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Tue, 12 Nov 2024 17:43:00 +0000 (GMT) Received: from pps.filterd (ppma11.dal12v.mail.ibm.com [127.0.0.1]) by ppma11.dal12v.mail.ibm.com (8.18.1.2/8.18.1.2) with ESMTP id 4AC7PQG4004153 for ; Tue, 12 Nov 2024 17:43:00 GMT Received: from smtprelay03.dal12v.mail.ibm.com ([172.16.1.5]) by ppma11.dal12v.mail.ibm.com (PPS) with ESMTPS id 42tms14hw2-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Tue, 12 Nov 2024 17:43:00 +0000 Received: from smtpav05.dal12v.mail.ibm.com (smtpav05.dal12v.mail.ibm.com [10.241.53.104]) by smtprelay03.dal12v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 4ACHgxHP50856206 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Tue, 12 Nov 2024 17:42:59 GMT Received: from smtpav05.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 99F8B58056 for ; Tue, 12 Nov 2024 17:42:59 +0000 (GMT) Received: from smtpav05.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 4CB8D58052 for ; Tue, 12 Nov 2024 17:42:59 +0000 (GMT) Received: from li-d664314c-3171-11b2-a85c-fa8047ef35bd.ibm.com.com (unknown [9.67.103.128]) by smtpav05.dal12v.mail.ibm.com (Postfix) with ESMTP for ; Tue, 12 Nov 2024 17:42:59 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on lists.libvirt.org X-Spam-Level: X-Spam-Status: No, score=-1.5 required=5.0 tests=DKIM_INVALID,DKIM_SIGNED, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,RCVD_IN_VALIDITY_RPBL_BLOCKED, RCVD_IN_VALIDITY_SAFE_BLOCKED,SPF_HELO_NONE autolearn=unavailable autolearn_force=no version=3.4.4 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h= content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=xqm43GhTS/VX+898x OBXOYLNMSd+NA8q9NUAxiy34Zk=; b=poGfZqmzO3z6DE9ucjAkJnoOGBpxsIenJ 5XlftYWP5cGveO0zfXRO5n2jO650PcFNZIpUfv0OFfoS8j9WJwZ9MDs00Y8O999u SaVtgSg+sEo0kULuRgJBFGHKTJk8LvromqFWq1XzdHD9YjATT7/yF8xpxkazeeYP Voagey4uSmWQwpnHtIdCUiGfQd4hv7XXUebLuOWCwWEw5/BrQVgZNA93nAqWMmSo lgvCp1vOBtVGIohUzaB20Xag3NllBLCutNVm3AxZKJNQufBANr2NOppp/rTNajyK 2wm5H3MO76QKgQDFOyno0SxPIZYr6/l6Vv58TPk2nF9PYWgumEebQ== From: Collin Walling To: devel@lists.libvirt.org Subject: [PATCH v1 3/5] qemu_capabilities: query deprecated features for host-model Date: Tue, 12 Nov 2024 12:39:58 -0500 Message-ID: <20241112174000.27518-4-walling@linux.ibm.com> X-Mailer: git-send-email 2.45.1 In-Reply-To: <20241112174000.27518-1-walling@linux.ibm.com> References: <20241112174000.27518-1-walling@linux.ibm.com> MIME-Version: 1.0 X-TM-AS-GCONF: 00 X-Proofpoint-GUID: WT8r7YkQs0b9n40ORTOOpTIXFgnF9wIm X-Proofpoint-ORIG-GUID: WT8r7YkQs0b9n40ORTOOpTIXFgnF9wIm X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1051,Hydra:6.0.680,FMLib:17.12.62.30 definitions=2024-10-15_01,2024-10-11_01,2024-09-30_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 malwarescore=0 phishscore=0 priorityscore=1501 mlxscore=0 suspectscore=0 clxscore=1015 lowpriorityscore=0 mlxlogscore=999 bulkscore=0 impostorscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.19.0-2409260000 definitions=main-2411120141 Content-Transfer-Encoding: quoted-printable Message-ID-Hash: UEW5G6HEKLR526EIXYB3D3O7NXAHX2BQ X-Message-ID-Hash: UEW5G6HEKLR526EIXYB3D3O7NXAHX2BQ X-MailFrom: walling@linux.ibm.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-config-1; header-match-config-2; header-match-config-3; header-match-devel.lists.libvirt.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; suspicious-header X-Mailman-Version: 3.2.2 Precedence: list List-Id: Development discussions about the libvirt library & tools Archived-At: List-Archive: List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1731433506388116600 Content-Type: text/plain; charset="utf-8" Add QEMU_CAPS_QUERY_CPU_MODEL_EXPANSION_DEPRECATED_PROPS for detecting if query-cpu-model-expansion can report deprecated CPU model properties. QEMU introduced this capability in 9.1 release. Add flag and deprecated features to the capabilities test data for QEMU 9.1 and 9.2 replies/XML since it can now be accounted for. When probing for the host CPU, perform a full CPU model expansion to retrieve the list of features deprecated across the entire architecture. The list and count are stored in the host's CPU model info within the QEMU capabilities. Other info resulting from this query (e.g. model name, etc) is ignored. The new capabilities flag is used to fence off the extra query for architectures/QEMU binaries that do not report deprecated CPU model features. Signed-off-by: Collin Walling --- src/qemu/qemu_capabilities.c | 38 ++ src/qemu/qemu_capabilities.h | 1 + .../caps_9.1.0_s390x.replies | 348 +++++++++++++++++- .../qemucapabilitiesdata/caps_9.1.0_s390x.xml | 7 + .../caps_9.2.0_s390x.replies | 348 +++++++++++++++++- .../qemucapabilitiesdata/caps_9.2.0_s390x.xml | 7 + 6 files changed, 745 insertions(+), 4 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 9850ed8458..8a10816757 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -720,6 +720,7 @@ VIR_ENUM_IMPL(virQEMUCaps, "snapshot-internal-qmp", /* QEMU_CAPS_SNAPSHOT_INTERNAL_QMP = */ "chardev-reconnect-miliseconds", /* QEMU_CAPS_CHARDEV_RECONN= ECT_MILISECONDS */ "virtio-ccw.loadparm", /* QEMU_CAPS_VIRTIO_CCW_DEVICE_LOADPA= RM */ + "query-cpu-model-expansion.deprecated-props", /* QEMU_CAPS_Q= UERY_CPU_MODEL_EXPANSION_DEPRECATED_PROPS */ ); =20 =20 @@ -1592,6 +1593,7 @@ static struct virQEMUCapsStringFlags virQEMUCapsQMPSc= hemaQueries[] =3D { { "query-migrate/ret-type/blocked-reasons", QEMU_CAPS_MIGRATION_BLOCKE= D_REASONS }, { "screendump/arg-type/format/^png", QEMU_CAPS_SCREENSHOT_FORMAT_PNG }, { "netdev_add/arg-type/+user", QEMU_CAPS_NETDEV_USER }, + { "query-cpu-model-expansion/ret-type/deprecated-props", QEMU_CAPS_QUE= RY_CPU_MODEL_EXPANSION_DEPRECATED_PROPS }, }; =20 typedef struct _virQEMUCapsObjectTypeProps virQEMUCapsObjectTypeProps; @@ -3144,6 +3146,38 @@ virQEMUCapsProbeHypervCapabilities(virQEMUCaps *qemu= Caps, } =20 =20 +/** + * virQEMUCapsProbeFullDeprecatedProperties + * @mon: QEMU monitor + * @cpu: CPU definition to be expanded + * @props: the array to be filled with deprecated features + * + * Performs a full CPU model expansion to retrieve an array of deprecated + * properties. If the expansion succeeds, then data previously stored in + * @props is freed. + * + * Returns: -1 if the expansion failed; otherwise 0. + */ +static int +virQEMUCapsProbeFullDeprecatedProperties(qemuMonitor *mon, + virCPUDef *cpu, + GStrv *props) +{ + g_autoptr(qemuMonitorCPUModelInfo) propsInfo =3D NULL; + + if (qemuMonitorGetCPUModelExpansion(mon, QEMU_MONITOR_CPU_MODEL_EXPANS= ION_FULL, + cpu, true, false, false, &propsInf= o) < 0) + return -1; + + if (propsInfo && propsInfo->deprecated_props) { + g_free(*props); + *props =3D g_steal_pointer(&propsInfo->deprecated_props); + } + + return 0; +} + + static int virQEMUCapsProbeQMPHostCPU(virQEMUCaps *qemuCaps, virQEMUCapsAccel *accel, @@ -3225,6 +3259,10 @@ virQEMUCapsProbeQMPHostCPU(virQEMUCaps *qemuCaps, modelInfo->migratability =3D true; } =20 + if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_QUERY_CPU_MODEL_EXPANSION_DEPRE= CATED_PROPS) && + virQEMUCapsProbeFullDeprecatedProperties(mon, cpu, &modelInfo->dep= recated_props) < 0) + return -1; + if (virQEMUCapsTypeIsAccelerated(virtType) && (ARCH_IS_X86(qemuCaps->arch) || ARCH_IS_ARM(qemuCaps->arch))) { g_autoptr(qemuMonitorCPUModelInfo) fullQEMU =3D NULL; diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h index e49fda6721..3acb903478 100644 --- a/src/qemu/qemu_capabilities.h +++ b/src/qemu/qemu_capabilities.h @@ -699,6 +699,7 @@ typedef enum { /* virQEMUCapsFlags grouping marker for = syntax-check */ QEMU_CAPS_SNAPSHOT_INTERNAL_QMP, /* internal snapshot support via QMP = commands 'snapshot-save'/'snapshot-delete' */ QEMU_CAPS_CHARDEV_RECONNECT_MILISECONDS, /* 'reconnect-ms' option for = chardevs supported */ QEMU_CAPS_VIRTIO_CCW_DEVICE_LOADPARM, /* loadparm available on CCW dev= ice for multi device boot */ + QEMU_CAPS_QUERY_CPU_MODEL_EXPANSION_DEPRECATED_PROPS, /* query-cpu-mod= el-expansion may report deprecated CPU properties */ =20 QEMU_CAPS_LAST /* this must always be the last item */ } virQEMUCapsFlags; diff --git a/tests/qemucapabilitiesdata/caps_9.1.0_s390x.replies b/tests/qe= mucapabilitiesdata/caps_9.1.0_s390x.replies index 2d4ab8ed75..0a523ba47e 100644 --- a/tests/qemucapabilitiesdata/caps_9.1.0_s390x.replies +++ b/tests/qemucapabilitiesdata/caps_9.1.0_s390x.replies @@ -32252,6 +32252,89 @@ "id": "libvirt-40" } =20 +{ + "execute": "query-cpu-model-expansion", + "arguments": { + "type": "full", + "model": { + "name": "host" + } + }, + "id": "libvirt-41" +} + +{ + "return": { + "deprecated-props": [ + "bpb", + "te", + "cte", + "csske" + ], + "model": { + "name": "gen16a-base", + "props": { + "nnpa": true, + "aen": true, + "cmmnt": true, + "vxpdeh": true, + "aefsi": true, + "diag318": true, + "csske": true, + "mepoch": true, + "msa9": true, + "msa8": true, + "msa7": true, + "msa6": true, + "msa5": true, + "msa4": true, + "msa3": true, + "msa2": true, + "msa1": true, + "sthyi": true, + "edat": true, + "ri": true, + "deflate": true, + "edat2": true, + "etoken": true, + "vx": true, + "ipter": true, + "pai": true, + "paie": true, + "mepochptff": true, + "ap": true, + "vxeh": true, + "vxpd": true, + "esop": true, + "msa9_pckmo": true, + "vxeh2": true, + "esort": true, + "appv": true, + "apqi": true, + "apft": true, + "els": true, + "iep": true, + "appvi": true, + "apqci": true, + "cte": true, + "ais": true, + "bpb": true, + "ctop": true, + "gs": true, + "ppa15": true, + "zpci": true, + "rdp": true, + "sea_esop2": true, + "beareh": true, + "te": true, + "cmm": true, + "vxpdeh2": true + } + } + }, + "id": "libvirt-41" +} + { "execute": "qmp_capabilities", "id": "libvirt-1" @@ -36262,10 +36345,271 @@ } =20 { - "execute": "query-machines", + "execute": "query-cpu-model-expansion", + "arguments": { + "type": "full", + "model": { + "name": "max" + } + }, + "id": "libvirt-4" +} + +{ + "return": { + "deprecated-props": [ + "bpb", + "te", + "cte", + "csske" + ], + "model": { + "name": "gen15a-base", + "props": { + "pfmfi": false, + "exrl": true, + "stfle45": true, + "kmctr-etdea-192": false, + "kmctr-etdea-128": false, + "nnpa": false, + "cmma": false, + "dateh2": false, + "gen13ptff": false, + "aen": true, + "kmo-etdea-192": false, + "kmf-etdea-192": false, + "kmc-etdea-192": false, + "kmac-tdea-192": false, + "kimd-sha-512": true, + "dateh": true, + "km-aes-256": false, + "km-aes-192": false, + "kmctr-aes-256": false, + "kma-gcm-eaes-192": false, + "kmo-tdea-192": false, + "kmf-tdea-192": false, + "kmctr-tdea-192": false, + "kmctr-tdea-128": false, + "km-etdea-192": false, + "kmc-tdea-192": false, + "cmmnt": false, + "iacc2": true, + "parseh": false, + "klmd-sha-512": true, + "kma-gcm-eaes-128": false, + "csst": true, + "pcc-xts-aes-256": false, + "pcc-xts-aes-128": false, + "pckmo-aes-128": false, + "idter": false, + "idtes": true, + "prno-trng-qrtcr": false, + "pcc-cmac-eaes-128": false, + "vxpdeh": false, + "aefsi": true, + "pckmo-etdea-192": false, + "pckmo-etdea-128": false, + "diag318": false, + "pcc-cmac-eaes-256": false, + "msa-base": true, + "pcc-cmac-etdea-192": false, + "hpma2": false, + "kmctr-eaes-256": false, + "csske": false, + "csst2": true, + "mepoch": false, + "msa9": false, + "msa6": false, + "msa1": false, + "kmctr-aes-192": false, + "pckmo-aes-256": false, + "sthyi": false, + "stckf": true, + "stfle": true, + "edat": false, + "etf3": true, + "etf2": true, + "hfpm": false, + "ri": false, + "pcc-xts-eaes-256": false, + "deflate": false, + "km-xts-eaes-256": false, + "km-xts-eaes-128": false, + "edat2": false, + "hfpue": false, + "kmo-aes-192": false, + "kmf-aes-192": false, + "km-eaes-192": false, + "kmc-aes-192": false, + "unpack": false, + "dfp": false, + "kmo-aes-128": false, + "kmf-aes-128": false, + "km-eaes-128": false, + "kmctr-dea": false, + "mvcos": true, + "etoken": false, + "pcc-cmac-tdea-192": false, + "km-dea": false, + "sprogp": true, + "sigpif": false, + "kmac-eaes-128": false, + "ldisphp": true, + "pckmo-aes-192": false, + "ipter": false, + "vx": true, + "pai": false, + "kimd-ghash": false, + "emon": false, + "kimd-sha-1": false, + "cei": false, + "cmpsceh": false, + "kmctr-eaes-192": false, + "kmctr-eaes-128": false, + "ginste": true, + "km-xts-aes-256": false, + "kmac-eaes-256": false, + "kmo-eaes-128": false, + "kmf-eaes-128": false, + "kmc-eaes-128": false, + "kmac-aes-128": false, + "paie": false, + "dfppc": false, + "dfpzc": false, + "dfphp": false, + "kmo-eaes-256": false, + "kmf-eaes-256": false, + "kmc-eaes-256": false, + "kmac-aes-256": false, + "kmac-etdea-192": false, + "kmac-etdea-128": false, + "kmo-dea": false, + "kmf-dea": false, + "km-edea": false, + "kmc-dea": false, + "stfle49": true, + "klmd-sha-1": false, + "mepochptff": false, + "opc": false, + "ap": false, + "asnlxr": false, + "gpereh": false, + "minste2": true, + "pcc-cmac-dea": false, + "vxpd": false, + "vxeh": true, + "esop": true, + "ectg": true, + "ib": false, + "km-tdea-192": false, + "km-tdea-128": false, + "msa9_pckmo": false, + "siif": false, + "kma-gcm-aes-256": false, + "kma-gcm-aes-192": false, + "kma-gcm-aes-128": false, + "pcc-cmac-aes-256": false, + "tsi": false, + "vxeh2": true, + "tpei": false, + "esort": false, + "esan3": true, + "fpe": true, + "ibs": false, + "pcc-xts-eaes-128": false, + "kmac-eaes-192": false, + "zarch": true, + "kmo-edea": false, + "kmf-edea": false, + "kmc-edea": false, + "kmac-dea": false, + "appv": false, + "apqi": false, + "apft": false, + "stfle53": true, + "ppno-sha-512-drng": false, + "pcc-cmac-tdea-128": false, + "kmo-aes-256": false, + "kmf-aes-256": false, + "km-eaes-256": false, + "kmc-aes-256": false, + "els": false, + "sief2": false, + "eimm": true, + "pcc-cmac-etdea-128": false, + "iep": true, + "irbm": false, + "km-xts-aes-128": false, + "srs": true, + "appvi": false, + "apqci": false, + "kmo-tdea-128": false, + "kmf-tdea-128": false, + "km-etdea-128": false, + "kmc-tdea-128": false, + "kss": false, + "cte": false, + "kmac-edea": false, + "prno-trng": true, + "kma-gcm-eaes-256": false, + "ais": true, + "fpseh": true, + "ltlbc": true, + "ldisp": true, + "kmo-etdea-128": false, + "kmf-etdea-128": false, + "kmc-etdea-128": false, + "kmac-tdea-128": false, + "pcc-cmac-edea": false, + "bpb": false, + "kmctr-edea": false, + "64bscao": false, + "ctop": false, + "kmo-eaes-192": false, + "kmf-eaes-192": false, + "kmc-eaes-192": false, + "kmac-aes-192": false, + "gs": false, + "sema": false, + "etf3eh": true, + "etf2eh": true, + "eec": false, + "pcc-cmac-eaes-192": false, + "ppa15": false, + "kmc-prng": false, + "zpci": true, + "rdp": false, + "nonqks": false, + "sea_esop2": true, + "minste3": true, + "beareh": false, + "pfpo": false, + "te": false, + "msa8-base": true, + "msa4-base": true, + "msa3-base": true, + "msa5-base": true, + "pcc-cmac-aes-192": false, + "cmm": false, + "tods": false, + "pcc-cmac-aes-128": false, + "plo": true, + "pckmo-edea": false, + "gsls": false, + "kmctr-aes-128": false, + "skey": false, + "vxpdeh2": false + } + } + }, "id": "libvirt-4" } =20 +{ + "execute": "query-machines", + "id": "libvirt-5" +} + { "return": [ { @@ -36568,5 +36912,5 @@ "default-ram-id": "s390.ram" } ], - "id": "libvirt-4" + "id": "libvirt-5" } diff --git a/tests/qemucapabilitiesdata/caps_9.1.0_s390x.xml b/tests/qemuca= pabilitiesdata/caps_9.1.0_s390x.xml index 5e8db88e52..b3265dcc18 100644 --- a/tests/qemucapabilitiesdata/caps_9.1.0_s390x.xml +++ b/tests/qemucapabilitiesdata/caps_9.1.0_s390x.xml @@ -133,6 +133,7 @@ + 9001000 39100246 v9.1.0 @@ -356,6 +357,12 @@ + + + + + + diff --git a/tests/qemucapabilitiesdata/caps_9.2.0_s390x.replies b/tests/qe= mucapabilitiesdata/caps_9.2.0_s390x.replies index 91c9a049bf..9a58acaf08 100644 --- a/tests/qemucapabilitiesdata/caps_9.2.0_s390x.replies +++ b/tests/qemucapabilitiesdata/caps_9.2.0_s390x.replies @@ -32411,6 +32411,89 @@ "id": "libvirt-40" } =20 +{ + "execute": "query-cpu-model-expansion", + "arguments": { + "type": "full", + "model": { + "name": "host" + } + }, + "id": "libvirt-41" +} + +{ + "return": { + "deprecated-props": [ + "bpb", + "te", + "cte", + "csske" + ], + "model": { + "name": "gen16a-base", + "props": { + "nnpa": true, + "aen": true, + "cmmnt": true, + "vxpdeh": true, + "aefsi": true, + "diag318": true, + "csske": true, + "mepoch": true, + "msa9": true, + "msa8": true, + "msa7": true, + "msa6": true, + "msa5": true, + "msa4": true, + "msa3": true, + "msa2": true, + "msa1": true, + "sthyi": true, + "edat": true, + "ri": true, + "deflate": true, + "edat2": true, + "etoken": true, + "vx": true, + "ipter": true, + "pai": true, + "paie": true, + "mepochptff": true, + "ap": true, + "vxeh": true, + "vxpd": true, + "esop": true, + "msa9_pckmo": true, + "vxeh2": true, + "esort": true, + "appv": true, + "apqi": true, + "apft": true, + "els": true, + "iep": true, + "appvi": true, + "apqci": true, + "cte": true, + "ais": true, + "bpb": true, + "ctop": true, + "gs": true, + "ppa15": true, + "zpci": true, + "rdp": true, + "sea_esop2": true, + "beareh": true, + "te": true, + "cmm": true, + "vxpdeh2": true + } + } + }, + "id": "libvirt-41" +} + { "execute": "qmp_capabilities", "id": "libvirt-1" @@ -36421,10 +36504,271 @@ } =20 { - "execute": "query-machines", + "execute": "query-cpu-model-expansion", + "arguments": { + "type": "full", + "model": { + "name": "max" + } + }, + "id": "libvirt-4" +} + +{ + "return": { + "deprecated-props": [ + "bpb", + "te", + "cte", + "csske" + ], + "model": { + "name": "gen15a-base", + "props": { + "pfmfi": false, + "exrl": true, + "stfle45": true, + "kmctr-etdea-192": false, + "kmctr-etdea-128": false, + "nnpa": false, + "cmma": false, + "dateh2": false, + "gen13ptff": false, + "aen": true, + "kmo-etdea-192": false, + "kmf-etdea-192": false, + "kmc-etdea-192": false, + "kmac-tdea-192": false, + "kimd-sha-512": true, + "dateh": true, + "km-aes-256": false, + "km-aes-192": false, + "kmctr-aes-256": false, + "kma-gcm-eaes-192": false, + "kmo-tdea-192": false, + "kmf-tdea-192": false, + "kmctr-tdea-192": false, + "kmctr-tdea-128": false, + "km-etdea-192": false, + "kmc-tdea-192": false, + "cmmnt": false, + "iacc2": true, + "parseh": false, + "klmd-sha-512": true, + "kma-gcm-eaes-128": false, + "csst": true, + "pcc-xts-aes-256": false, + "pcc-xts-aes-128": false, + "pckmo-aes-128": false, + "idter": false, + "idtes": true, + "prno-trng-qrtcr": false, + "pcc-cmac-eaes-128": false, + "vxpdeh": false, + "aefsi": true, + "pckmo-etdea-192": false, + "pckmo-etdea-128": false, + "diag318": false, + "pcc-cmac-eaes-256": false, + "msa-base": true, + "pcc-cmac-etdea-192": false, + "hpma2": false, + "kmctr-eaes-256": false, + "csske": false, + "csst2": true, + "mepoch": false, + "msa9": false, + "msa6": false, + "msa1": false, + "kmctr-aes-192": false, + "pckmo-aes-256": false, + "sthyi": false, + "stckf": true, + "stfle": true, + "edat": false, + "etf3": true, + "etf2": true, + "hfpm": false, + "ri": false, + "pcc-xts-eaes-256": false, + "deflate": false, + "km-xts-eaes-256": false, + "km-xts-eaes-128": false, + "edat2": false, + "hfpue": false, + "kmo-aes-192": false, + "kmf-aes-192": false, + "km-eaes-192": false, + "kmc-aes-192": false, + "unpack": false, + "dfp": false, + "kmo-aes-128": false, + "kmf-aes-128": false, + "km-eaes-128": false, + "kmctr-dea": false, + "mvcos": true, + "etoken": false, + "pcc-cmac-tdea-192": false, + "km-dea": false, + "sprogp": true, + "sigpif": false, + "kmac-eaes-128": false, + "ldisphp": true, + "pckmo-aes-192": false, + "ipter": false, + "vx": true, + "pai": false, + "kimd-ghash": false, + "emon": false, + "kimd-sha-1": false, + "cei": false, + "cmpsceh": false, + "kmctr-eaes-192": false, + "kmctr-eaes-128": false, + "ginste": true, + "km-xts-aes-256": false, + "kmac-eaes-256": false, + "kmo-eaes-128": false, + "kmf-eaes-128": false, + "kmc-eaes-128": false, + "kmac-aes-128": false, + "paie": false, + "dfppc": false, + "dfpzc": false, + "dfphp": false, + "kmo-eaes-256": false, + "kmf-eaes-256": false, + "kmc-eaes-256": false, + "kmac-aes-256": false, + "kmac-etdea-192": false, + "kmac-etdea-128": false, + "kmo-dea": false, + "kmf-dea": false, + "km-edea": false, + "kmc-dea": false, + "stfle49": true, + "klmd-sha-1": false, + "mepochptff": false, + "opc": false, + "ap": false, + "asnlxr": false, + "gpereh": false, + "minste2": true, + "pcc-cmac-dea": false, + "vxpd": false, + "vxeh": true, + "esop": true, + "ectg": true, + "ib": false, + "km-tdea-192": false, + "km-tdea-128": false, + "msa9_pckmo": false, + "siif": false, + "kma-gcm-aes-256": false, + "kma-gcm-aes-192": false, + "kma-gcm-aes-128": false, + "pcc-cmac-aes-256": false, + "tsi": false, + "vxeh2": true, + "tpei": false, + "esort": false, + "esan3": true, + "fpe": true, + "ibs": false, + "pcc-xts-eaes-128": false, + "kmac-eaes-192": false, + "zarch": true, + "kmo-edea": false, + "kmf-edea": false, + "kmc-edea": false, + "kmac-dea": false, + "appv": false, + "apqi": false, + "apft": false, + "stfle53": true, + "ppno-sha-512-drng": false, + "pcc-cmac-tdea-128": false, + "kmo-aes-256": false, + "kmf-aes-256": false, + "km-eaes-256": false, + "kmc-aes-256": false, + "els": false, + "sief2": false, + "eimm": true, + "pcc-cmac-etdea-128": false, + "iep": true, + "irbm": false, + "km-xts-aes-128": false, + "srs": true, + "appvi": false, + "apqci": false, + "kmo-tdea-128": false, + "kmf-tdea-128": false, + "km-etdea-128": false, + "kmc-tdea-128": false, + "kss": false, + "cte": false, + "kmac-edea": false, + "prno-trng": true, + "kma-gcm-eaes-256": false, + "ais": true, + "fpseh": true, + "ltlbc": true, + "ldisp": true, + "kmo-etdea-128": false, + "kmf-etdea-128": false, + "kmc-etdea-128": false, + "kmac-tdea-128": false, + "pcc-cmac-edea": false, + "bpb": false, + "kmctr-edea": false, + "64bscao": false, + "ctop": false, + "kmo-eaes-192": false, + "kmf-eaes-192": false, + "kmc-eaes-192": false, + "kmac-aes-192": false, + "gs": false, + "sema": false, + "etf3eh": true, + "etf2eh": true, + "eec": false, + "pcc-cmac-eaes-192": false, + "ppa15": false, + "kmc-prng": false, + "zpci": true, + "rdp": false, + "nonqks": false, + "sea_esop2": true, + "minste3": true, + "beareh": false, + "pfpo": false, + "te": false, + "msa8-base": true, + "msa4-base": true, + "msa3-base": true, + "msa5-base": true, + "pcc-cmac-aes-192": false, + "cmm": false, + "tods": false, + "pcc-cmac-aes-128": false, + "plo": true, + "pckmo-edea": false, + "gsls": false, + "kmctr-aes-128": false, + "skey": false, + "vxpdeh2": false + } + } + }, "id": "libvirt-4" } =20 +{ + "execute": "query-machines", + "id": "libvirt-5" +} + { "return": [ { @@ -36737,5 +37081,5 @@ "default-ram-id": "s390.ram" } ], - "id": "libvirt-4" + "id": "libvirt-5" } diff --git a/tests/qemucapabilitiesdata/caps_9.2.0_s390x.xml b/tests/qemuca= pabilitiesdata/caps_9.2.0_s390x.xml index 0fa73e9918..330980de1c 100644 --- a/tests/qemucapabilitiesdata/caps_9.2.0_s390x.xml +++ b/tests/qemucapabilitiesdata/caps_9.2.0_s390x.xml @@ -135,6 +135,7 @@ + 9001050 39100247 v9.1.0-1348-g11b8920ed2 @@ -359,6 +360,12 @@ + + + + + + --=20 2.45.1