From nobody Mon Feb 9 16:51:34 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) client-ip=209.132.183.28; envelope-from=libvir-list-bounces@redhat.com; helo=mx1.redhat.com; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1564063604; cv=none; d=zoho.com; s=zohoarc; b=dkKpXqLnTBxqij4cwSo6IY3RRwds6nYRH/6vJw2jfbxGNHd60658EevGk0HOsu2hoD7qkmEO5H4LYpptxz4WfHXLgI2stTcyzvAhcLv/17HhVAK6hhNx79WbvQ3YcG13gJ7oXQ5j6Dy5C5Hyy1PVDsoDn1sOEeDXNkU03JmzL4A= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1564063604; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To:ARC-Authentication-Results; bh=pJWHen+PD0lWEHA+7HNA2DgF7QlB39bcLrv8TVdWOgE=; b=Gzk34fqY4JJWTTY5oz+ZbX9SDZObjXy8/QDO3j65FinKwsMuGzkuWNnhcdF8hswkLgoZXo0PNrFAQXEU3QfoTaKKeEF08oZyxt2oFaphRxoj0c2ZKSWjv+2vfRbYa6pg3X/3YJdaz9tB2hVh0HtpN9+deGtohpCRm6lGMijRIrY= ARC-Authentication-Results: i=1; mx.zoho.com; spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by mx.zohomail.com with SMTPS id 1564063604114655.4993029471922; Thu, 25 Jul 2019 07:06:44 -0700 (PDT) Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 97D783092649; Thu, 25 Jul 2019 14:06:42 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 5D8E960A35; Thu, 25 Jul 2019 14:06:42 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id E78B1264CB; Thu, 25 Jul 2019 14:06:41 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id x6PE6eI1007492 for ; Thu, 25 Jul 2019 10:06:40 -0400 Received: by smtp.corp.redhat.com (Postfix) id 8DEFD608AB; Thu, 25 Jul 2019 14:06:40 +0000 (UTC) Received: from kinshicho.brq.redhat.com (unknown [10.43.2.73]) by smtp.corp.redhat.com (Postfix) with ESMTPS id E64636092D for ; Thu, 25 Jul 2019 14:06:37 +0000 (UTC) From: Andrea Bolognani To: libvir-list@redhat.com Date: Thu, 25 Jul 2019 16:06:19 +0200 Message-Id: <20190725140625.2397-6-abologna@redhat.com> In-Reply-To: <20190725140625.2397-1-abologna@redhat.com> References: <20190725140625.2397-1-abologna@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH RFC 05/11] qemu: Query max-arm-cpu properties X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: quoted-printable Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.43]); Thu, 25 Jul 2019 14:06:43 +0000 (UTC) Content-Type: text/plain; charset="utf-8" Signed-off-by: Andrea Bolognani --- src/qemu/qemu_capabilities.c | 3 + .../caps_2.12.0.aarch64.replies | 159 ++++++++++-- .../caps_4.0.0.aarch64.replies | 159 ++++++++++-- .../caps_4.1.0.aarch64.replies | 235 ++++++++++++++++-- 4 files changed, 500 insertions(+), 56 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 7642639d1e..b3fbc76d07 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -1420,6 +1420,9 @@ static virQEMUCapsObjectTypeProps virQEMUCapsObjectPr= ops[] =3D { { "max-x86_64-cpu", virQEMUCapsObjectPropsMaxCPU, ARRAY_CARDINALITY(virQEMUCapsObjectPropsMaxCPU), QEMU_CAPS_X86_MAX_CPU }, + { "max-arm-cpu", virQEMUCapsObjectPropsMaxCPU, + ARRAY_CARDINALITY(virQEMUCapsObjectPropsMaxCPU), + QEMU_CAPS_ARM_MAX_CPU }, }; =20 static struct virQEMUCapsStringFlags virQEMUCapsMachinePropsPSeries[] =3D { diff --git a/tests/qemucapabilitiesdata/caps_2.12.0.aarch64.replies b/tests= /qemucapabilitiesdata/caps_2.12.0.aarch64.replies index c4d9c42d72..2e1d8d345d 100644 --- a/tests/qemucapabilitiesdata/caps_2.12.0.aarch64.replies +++ b/tests/qemucapabilitiesdata/caps_2.12.0.aarch64.replies @@ -5376,10 +5376,133 @@ } =20 { - "execute": "query-machines", + "execute": "qom-list-properties", + "arguments": { + "typename": "max-arm-cpu" + }, "id": "libvirt-31" } =20 +{ + "return": [ + { + "name": "pmu", + "type": "bool" + }, + { + "name": "midr", + "type": "uint32" + }, + { + "name": "mp-affinity", + "type": "uint64" + }, + { + "name": "hotpluggable", + "type": "bool" + }, + { + "name": "unnamed-gpio-in[0]", + "type": "child" + }, + { + "name": "cfgend", + "type": "bool" + }, + { + "name": "psci-conduit", + "type": "uint32" + }, + { + "name": "reset-hivecs", + "type": "bool" + }, + { + "name": "memory", + "type": "link" + }, + { + "name": "unnamed-gpio-out[2]", + "type": "link" + }, + { + "name": "hotplugged", + "type": "bool" + }, + { + "name": "unnamed-gpio-out[3]", + "type": "link" + }, + { + "name": "parent_bus", + "type": "link" + }, + { + "name": "node-id", + "type": "int32" + }, + { + "name": "start-powered-off", + "type": "bool" + }, + { + "name": "unnamed-gpio-out[1]", + "type": "link" + }, + { + "name": "core-count", + "type": "int32" + }, + { + "name": "unnamed-gpio-out[0]", + "type": "link" + }, + { + "name": "gicv3-maintenance-interrupt[0]", + "type": "link" + }, + { + "name": "rvbar", + "type": "uint64" + }, + { + "name": "type", + "type": "string" + }, + { + "name": "pmu-interrupt[0]", + "type": "link" + }, + { + "name": "aarch64", + "description": "Set on/off to enable/disable aarch64 execution state= ", + "type": "bool" + }, + { + "name": "unnamed-gpio-in[2]", + "type": "child" + }, + { + "name": "unnamed-gpio-in[3]", + "type": "child" + }, + { + "name": "realized", + "type": "bool" + }, + { + "name": "unnamed-gpio-in[1]", + "type": "child" + } + ], + "id": "libvirt-31" +} + +{ + "execute": "query-machines", + "id": "libvirt-32" +} + { "return": [ { @@ -5674,7 +5797,7 @@ "cpu-max": 1 } ], - "id": "libvirt-31" + "id": "libvirt-32" } =20 { @@ -5682,7 +5805,7 @@ "arguments": { "typename": "virt-2.12-machine" }, - "id": "libvirt-32" + "id": "libvirt-33" } =20 { @@ -5812,12 +5935,12 @@ "type": "bool" } ], - "id": "libvirt-32" + "id": "libvirt-33" } =20 { "execute": "query-cpu-definitions", - "id": "libvirt-33" + "id": "libvirt-34" } =20 { @@ -5993,35 +6116,35 @@ "static": false } ], - "id": "libvirt-33" + "id": "libvirt-34" } =20 { "execute": "query-tpm-models", - "id": "libvirt-34" + "id": "libvirt-35" } =20 { "return": [ ], - "id": "libvirt-34" + "id": "libvirt-35" } =20 { "execute": "query-tpm-types", - "id": "libvirt-35" + "id": "libvirt-36" } =20 { "return": [ "emulator" ], - "id": "libvirt-35" + "id": "libvirt-36" } =20 { "execute": "query-command-line-options", - "id": "libvirt-36" + "id": "libvirt-37" } =20 { @@ -7186,12 +7309,12 @@ "option": "drive" } ], - "id": "libvirt-36" + "id": "libvirt-37" } =20 { "execute": "query-migrate-capabilities", - "id": "libvirt-37" + "id": "libvirt-38" } =20 { @@ -7253,12 +7376,12 @@ "capability": "dirty-bitmaps" } ], - "id": "libvirt-37" + "id": "libvirt-38" } =20 { "execute": "query-qmp-schema", - "id": "libvirt-38" + "id": "libvirt-39" } =20 { @@ -18626,12 +18749,12 @@ "meta-type": "object" } ], - "id": "libvirt-38" + "id": "libvirt-39" } =20 { "execute": "query-gic-capabilities", - "id": "libvirt-39" + "id": "libvirt-40" } =20 { @@ -18647,7 +18770,7 @@ "kernel": false } ], - "id": "libvirt-39" + "id": "libvirt-40" } =20 { diff --git a/tests/qemucapabilitiesdata/caps_4.0.0.aarch64.replies b/tests/= qemucapabilitiesdata/caps_4.0.0.aarch64.replies index 91943860b1..3a9b1b8dc7 100644 --- a/tests/qemucapabilitiesdata/caps_4.0.0.aarch64.replies +++ b/tests/qemucapabilitiesdata/caps_4.0.0.aarch64.replies @@ -5864,10 +5864,133 @@ } =20 { - "execute": "query-machines", + "execute": "qom-list-properties", + "arguments": { + "typename": "max-arm-cpu" + }, "id": "libvirt-32" } =20 +{ + "return": [ + { + "name": "type", + "type": "string" + }, + { + "name": "pmu", + "type": "bool" + }, + { + "name": "midr", + "type": "uint32" + }, + { + "name": "mp-affinity", + "type": "uint64" + }, + { + "name": "hotpluggable", + "type": "bool" + }, + { + "name": "unnamed-gpio-in[0]", + "type": "child" + }, + { + "name": "psci-conduit", + "type": "uint32" + }, + { + "name": "reset-hivecs", + "type": "bool" + }, + { + "name": "memory", + "type": "link" + }, + { + "name": "unnamed-gpio-out[2]", + "type": "link" + }, + { + "name": "hotplugged", + "type": "bool" + }, + { + "name": "unnamed-gpio-out[3]", + "type": "link" + }, + { + "name": "parent_bus", + "type": "link" + }, + { + "name": "node-id", + "type": "int32" + }, + { + "name": "start-powered-off", + "type": "bool" + }, + { + "name": "unnamed-gpio-out[1]", + "type": "link" + }, + { + "name": "core-count", + "type": "int32" + }, + { + "name": "unnamed-gpio-out[0]", + "type": "link" + }, + { + "name": "gicv3-maintenance-interrupt[0]", + "type": "link" + }, + { + "name": "rvbar", + "type": "uint64" + }, + { + "name": "cfgend", + "type": "bool" + }, + { + "name": "pmu-interrupt[0]", + "type": "link" + }, + { + "name": "aarch64", + "description": "Set on/off to enable/disable aarch64 execution state= ", + "type": "bool" + }, + { + "name": "unnamed-gpio-in[2]", + "type": "child" + }, + { + "name": "unnamed-gpio-in[3]", + "type": "child" + }, + { + "name": "realized", + "type": "bool" + }, + { + "name": "unnamed-gpio-in[1]", + "type": "child" + } + ], + "id": "libvirt-32" +} + +{ + "execute": "query-machines", + "id": "libvirt-33" +} + { "return": [ { @@ -6207,7 +6330,7 @@ "cpu-max": 1 } ], - "id": "libvirt-32" + "id": "libvirt-33" } =20 { @@ -6215,7 +6338,7 @@ "arguments": { "typename": "virt-4.0-machine" }, - "id": "libvirt-33" + "id": "libvirt-34" } =20 { @@ -6350,12 +6473,12 @@ "type": "string" } ], - "id": "libvirt-33" + "id": "libvirt-34" } =20 { "execute": "query-cpu-definitions", - "id": "libvirt-34" + "id": "libvirt-35" } =20 { @@ -6546,34 +6669,34 @@ "static": false } ], - "id": "libvirt-34" + "id": "libvirt-35" } =20 { "execute": "query-tpm-models", - "id": "libvirt-35" + "id": "libvirt-36" } =20 { "return": [ ], - "id": "libvirt-35" + "id": "libvirt-36" } =20 { "execute": "query-tpm-types", - "id": "libvirt-36" + "id": "libvirt-37" } =20 { "return": [ ], - "id": "libvirt-36" + "id": "libvirt-37" } =20 { "execute": "query-command-line-options", - "id": "libvirt-37" + "id": "libvirt-38" } =20 { @@ -7721,12 +7844,12 @@ "option": "drive" } ], - "id": "libvirt-37" + "id": "libvirt-38" } =20 { "execute": "query-migrate-capabilities", - "id": "libvirt-38" + "id": "libvirt-39" } =20 { @@ -7800,12 +7923,12 @@ "capability": "x-ignore-shared" } ], - "id": "libvirt-38" + "id": "libvirt-39" } =20 { "execute": "query-qmp-schema", - "id": "libvirt-39" + "id": "libvirt-40" } =20 { @@ -19892,12 +20015,12 @@ ] } ], - "id": "libvirt-39" + "id": "libvirt-40" } =20 { "execute": "query-gic-capabilities", - "id": "libvirt-40" + "id": "libvirt-41" } =20 { @@ -19913,7 +20036,7 @@ "kernel": false } ], - "id": "libvirt-40" + "id": "libvirt-41" } =20 { diff --git a/tests/qemucapabilitiesdata/caps_4.1.0.aarch64.replies b/tests/= qemucapabilitiesdata/caps_4.1.0.aarch64.replies index 7262ce6b11..4dd40ecee6 100644 --- a/tests/qemucapabilitiesdata/caps_4.1.0.aarch64.replies +++ b/tests/qemucapabilitiesdata/caps_4.1.0.aarch64.replies @@ -5924,10 +5924,205 @@ } =20 { - "execute": "query-machines", + "execute": "qom-list-properties", + "arguments": { + "typename": "max-arm-cpu" + }, + "id": "libvirt-32" +} + +{ + "return": [ + { + "name": "type", + "type": "string" + }, + { + "name": "sve640", + "type": "bool" + }, + { + "name": "psci-conduit", + "type": "uint32" + }, + { + "name": "sve128", + "type": "bool" + }, + { + "name": "sve1152", + "type": "bool" + }, + { + "name": "node-id", + "type": "int32" + }, + { + "name": "sve1408", + "type": "bool" + }, + { + "name": "memory", + "type": "link" + }, + { + "name": "unnamed-gpio-in[3]", + "type": "child" + }, + { + "name": "core-count", + "type": "int32" + }, + { + "name": "sve2048", + "type": "bool" + }, + { + "name": "aarch64", + "description": "Set on/off to enable/disable aarch64 execution state= ", + "type": "bool" + }, + { + "name": "unnamed-gpio-in[1]", + "type": "child" + }, + { + "name": "sve1664", + "type": "bool" + }, + { + "name": "realized", + "type": "bool" + }, + { + "name": "rvbar", + "type": "uint64" + }, + { + "name": "sve384", + "type": "bool" + }, + { + "name": "unnamed-gpio-out[2]", + "type": "link" + }, + { + "name": "mp-affinity", + "type": "uint64" + }, + { + "name": "parent_bus", + "type": "link" + }, + { + "name": "unnamed-gpio-out[0]", + "type": "link" + }, + { + "name": "sve512", + "type": "bool" + }, + { + "name": "hotplugged", + "type": "bool" + }, + { + "name": "gicv3-maintenance-interrupt[0]", + "type": "link" + }, + { + "name": "sve896", + "type": "bool" + }, + { + "name": "sve1024", + "type": "bool" + }, + { + "name": "pmu-interrupt[0]", + "type": "link" + }, + { + "name": "sve1280", + "type": "bool" + }, + { + "name": "sve1536", + "type": "bool" + }, + { + "name": "unnamed-gpio-in[2]", + "type": "child" + }, + { + "name": "sve-max-vq", + "type": "uint32" + }, + { + "name": "sve", + "type": "bool" + }, + { + "name": "start-powered-off", + "type": "bool" + }, + { + "name": "unnamed-gpio-in[0]", + "type": "child" + }, + { + "name": "sve256", + "type": "bool" + }, + { + "name": "sve1792", + "type": "bool" + }, + { + "name": "unnamed-gpio-out[3]", + "type": "link" + }, + { + "name": "cfgend", + "type": "bool" + }, + { + "name": "midr", + "type": "uint32" + }, + { + "name": "hotpluggable", + "type": "bool" + }, + { + "name": "pmu", + "type": "bool" + }, + { + "name": "unnamed-gpio-out[1]", + "type": "link" + }, + { + "name": "sve1920", + "type": "bool" + }, + { + "name": "reset-hivecs", + "type": "bool" + }, + { + "name": "sve768", + "type": "bool" + } + ], "id": "libvirt-32" } =20 +{ + "execute": "query-machines", + "id": "libvirt-33" +} + { "return": [ { @@ -6272,7 +6467,7 @@ "cpu-max": 1 } ], - "id": "libvirt-32" + "id": "libvirt-33" } =20 { @@ -6280,7 +6475,7 @@ "arguments": { "typename": "virt-4.1-machine" }, - "id": "libvirt-33" + "id": "libvirt-34" } =20 { @@ -6433,12 +6628,12 @@ "type": "child" } ], - "id": "libvirt-33" + "id": "libvirt-34" } =20 { "execute": "query-cpu-definitions", - "id": "libvirt-34" + "id": "libvirt-35" } =20 { @@ -6629,34 +6824,34 @@ "static": false } ], - "id": "libvirt-34" + "id": "libvirt-35" } =20 { "execute": "query-tpm-models", - "id": "libvirt-35" + "id": "libvirt-36" } =20 { "return": [ ], - "id": "libvirt-35" + "id": "libvirt-36" } =20 { "execute": "query-tpm-types", - "id": "libvirt-36" + "id": "libvirt-37" } =20 { "return": [ ], - "id": "libvirt-36" + "id": "libvirt-37" } =20 { "execute": "query-command-line-options", - "id": "libvirt-37" + "id": "libvirt-38" } =20 { @@ -7808,12 +8003,12 @@ "option": "drive" } ], - "id": "libvirt-37" + "id": "libvirt-38" } =20 { "execute": "query-migrate-capabilities", - "id": "libvirt-38" + "id": "libvirt-39" } =20 { @@ -7887,12 +8082,12 @@ "capability": "x-ignore-shared" } ], - "id": "libvirt-38" + "id": "libvirt-39" } =20 { "execute": "query-qmp-schema", - "id": "libvirt-39" + "id": "libvirt-40" } =20 { @@ -20058,12 +20253,12 @@ ] } ], - "id": "libvirt-39" + "id": "libvirt-40" } =20 { "execute": "query-gic-capabilities", - "id": "libvirt-40" + "id": "libvirt-41" } =20 { @@ -20079,7 +20274,7 @@ "kernel": false } ], - "id": "libvirt-40" + "id": "libvirt-41" } =20 { @@ -20090,11 +20285,11 @@ "name": "host" } }, - "id": "libvirt-41" + "id": "libvirt-42" } =20 { - "id": "libvirt-41", + "id": "libvirt-42", "error": { "class": "GenericError", "desc": "The requested expansion type is not supported." --=20 2.21.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list