From nobody Wed Mar 12 13:09:32 2025 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; arc=fail (BodyHash is different from the expected one); dmarc=pass(p=reject dis=none) header.from=lists.libvirt.org Return-Path: Received: from lists.libvirt.org (lists.libvirt.org [8.43.85.245]) by mx.zohomail.com with SMTPS id 174099059761855.102672737996386; Mon, 3 Mar 2025 00:29:57 -0800 (PST) Received: by lists.libvirt.org (Postfix, from userid 996) id EBB6C143C; Mon, 3 Mar 2025 03:29:56 -0500 (EST) Received: from lists.libvirt.org (localhost [IPv6:::1]) by lists.libvirt.org (Postfix) with ESMTP id 68709140C; Mon, 3 Mar 2025 03:28:51 -0500 (EST) Received: by lists.libvirt.org (Postfix, from userid 996) id 323FA14E8; Fri, 28 Feb 2025 18:00:41 -0500 (EST) Received: from NAM10-DM6-obe.outbound.protection.outlook.com (mail-dm6nam10on2060.outbound.protection.outlook.com [40.107.93.60]) (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 9461E14DC for ; Fri, 28 Feb 2025 18:00:39 -0500 (EST) Received: from MW6PR12MB8897.namprd12.prod.outlook.com (2603:10b6:303:24a::19) by PH7PR12MB6936.namprd12.prod.outlook.com (2603:10b6:510:1ba::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8489.23; Fri, 28 Feb 2025 23:00:34 +0000 Received: from MW6PR12MB8897.namprd12.prod.outlook.com ([fe80::7c55:5a45:be80:e971]) by MW6PR12MB8897.namprd12.prod.outlook.com ([fe80::7c55:5a45:be80:e971%4]) with mapi id 15.20.8489.021; Fri, 28 Feb 2025 23:00:34 +0000 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on lists.libvirt.org X-Spam-Level: X-Spam-Status: No, score=-0.7 required=5.0 tests=DKIM_INVALID,DKIM_SIGNED, FORGED_SPF_HELO,MAILING_LIST_MULTI,RCVD_IN_MSPIKE_H2, RCVD_IN_VALIDITY_RPBL_BLOCKED,RCVD_IN_VALIDITY_SAFE_BLOCKED, SPF_HELO_PASS autolearn=unavailable autolearn_force=no version=3.4.4 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=xcBM3XxsDJpba3weB+lL9MBndezteioUF0PLlaqIquiKupvRfdYZPHsXX9rF3c10649OycPLgeIzDHr9+CQtPIkPTT80jqBxaxJyNIgCr72uWYDPDYgJ/48t5xoExtIIQSuEMImoF3eY7neraBK6BvwwTb7vVK3yyxbqresCrZBLvRDzQAx60wyIWDcXl2D3A7T5JhdMhXBtD7XIfXcyLzoSQT6a+nZ79iBNrYrO/NS+Md02BYJJe/x1SZRnsK/7wRAqZbvQEm1XpBnbc5lGmGbKBATpLpuSAQ2dVK+70qIbpmMh304VbbinyJM3cZ4+oH53/o/j7o3Bql75j/dyEQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=wC0pntShTf0YBtDB1hllFbIOkd+mOXsoUohWR7htDzM=; b=JHvo3JzUGkzhm20I8rQc9Cb92ep2TpNnuFNs2Wf3SMw8NtfmwuRASmE2Cx/2kBzvGHzZ/toKh4GZTNLEQUS2G40vusk/ZEm3Bcegn1xtolG9YMBZdHIhrio8YfXRfc9ZbDtnDY386e7x0SFLF6gQXeRJfNKRAb4qMV3b0dft4SOOmUMIAGGHMGBqbRjtMEi5gjLwVUSojq/TJuH5gYhkl9rYONRW3Wf8oxXUrmSMt2rRNxw1mUgG6smhHP+cHIvCVPGz66xzRXaLYcIHOQy2xOytrUlKWQpaIPzKJfXy7cBbsZQ+6XYiUTtgw3oQn6cWg2Ts5exPdCJOSZ3plf9i6g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=wC0pntShTf0YBtDB1hllFbIOkd+mOXsoUohWR7htDzM=; b=S6enm6I1N6dLExNWmrdR73sDFffn4Bs/aMXnQUkvvI+/o/ag2HdZhTbkyHek6gzOaMTpo+RjrlSG9nbBuo2ZaTttWdMbj1GMtMoaoMgTlep/x8pAKFQdYuhTDN49iAJOKnE9AKxPTZw61WbEDXfbUtyAw5Cb+exMh4L1g+FoV3YTgY+QsuBnAtD5WKJt4vfgc8f25qdvvSW9Yk7zsgIPcWJ++/9R3Kk75ydKx6icZsAaiV8b/25xAKwUQ5WG4gnTyLurVWLySAWKINPnNDYbVv1vJoIhv4uJmSuTyg8t5LQyQzAIf9tdBueuy7DOEhNmSzVrwIJOXXHyjnDEFYp8fw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; To: devel@lists.libvirt.org Subject: [PATCH 1/6] domain: Add PCI configuration feature infrastructure Date: Fri, 28 Feb 2025 15:00:34 -0800 Message-ID: <20250228230034.3216499-1-mochs@nvidia.com> X-Mailer: git-send-email 2.46.0 In-Reply-To: <20250228225934.3213582-1-mochs@nvidia.com> References: <20250228225934.3213582-1-mochs@nvidia.com> X-NVConfidentiality: public X-ClientProxiedBy: SJ0PR05CA0041.namprd05.prod.outlook.com (2603:10b6:a03:33f::16) To MW6PR12MB8897.namprd12.prod.outlook.com (2603:10b6:303:24a::19) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MW6PR12MB8897:EE_|PH7PR12MB6936:EE_ X-MS-Office365-Filtering-Correlation-Id: 469b316f-cd86-460e-d3f8-08dd584bb56a X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|1800799024|376014; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?WKQH5SQVRi1rw6MaDSHrJTMjZKu9o9aEMVr/5g5xrvGxqSV11EKPWs/QoAsu?= =?us-ascii?Q?nbT5ZbBpEDNbJ5BaQOxfqdveeLTv7wUtC6vgk5LXtXeeiLQydNwfEvMJ938I?= =?us-ascii?Q?bS0gBUgp+rjA8s/w1WG8MmyvznkzfKvhcADqLGNb5xq9lAXBvByo+Zm3utqs?= =?us-ascii?Q?9GZxbjWAEltyoQ6UDawirMYNcKJWIad73XY8LPutKWjyBxte3BuX3AAuK2mc?= =?us-ascii?Q?XcJCzdobBQpRsNRR6S7xfttD05XwX39K4J4n/nBvMAwPbAUrDUKNFvB9qAZh?= =?us-ascii?Q?oRjSOhtZdq5rY9heBjnslWGQMpz8bAhrBDZ4jlEjMrBdqcdXBXprv3M6rYbK?= =?us-ascii?Q?4uFxgR1JXQSMrI/atErMBnI/UMJTmpgtHx9lKTXW6zweYNtrIAlAL3fjKgfl?= =?us-ascii?Q?E04J+Fym/TOf0gVIyYFdwqVQVa+4HO8n3n5aHYBposP8zVojYNN0FHYtQNTq?= =?us-ascii?Q?TnevMftmtXjgizTBVWAZ+42CjDURiLAEJwV6GgxbR84pyfveYxvhutn5IufD?= =?us-ascii?Q?N4zsoippMZBFYw4STtmA+1sr1ZoJGZ3txslIleQ/0CoRlh8z6kNLgvkUqdzJ?= =?us-ascii?Q?StTSCbl5i6IEnna90EwcEQROBnkFdwzqXNyAlP6sDUFAQE1kBvQMblzTyzE9?= =?us-ascii?Q?AzWKGJYkubTE7TtB2Y7oSY2fnu9beWVOCKrIu4FOG9kTzXIIz4uE0a+6zWpB?= =?us-ascii?Q?B+VnCSeG2zTsLcEPvEqXs0lokVr6zZKYSafxCFwke0PH/A37THjfaZPE3cMb?= =?us-ascii?Q?j95wRIBYNDhiSqDPozkmVrZbZ+eURE85ZDVCA0/By/kxipAiasjwkceD6Lsc?= =?us-ascii?Q?65RGG/GfoH/7cjWeaMe/4pOz46aMdVkhCmfhO7r8Ug97wapq8AKOjLOvab0A?= =?us-ascii?Q?426QCC7kXrc0Jfm8JWqk92xFoq/MeO1qeVWq2AKuY1f0lcc6j6hX29mYL8xz?= =?us-ascii?Q?1nOHGXtWhMp0hkvg/lV/IW47ddDYJmCAqA8PwVQsq4hVg2IKrpbPFQRIAJXJ?= =?us-ascii?Q?QTGVNOs472HYbbXNmqD8xDtFUu3wgDgHJeVAce+4mlNpfaCzAwSe+vHQfbh8?= =?us-ascii?Q?6RtRa5McKGVylV9woq9Yn5JMzrbgE7PlwsIFMtcOMA2BwvqUKhPewfAh8LPo?= =?us-ascii?Q?HfBK/Su1D0AUZAGOv5UiAwCMEexZGR72UVT+xpdWCiQoULN/Y5lCeroEaQyZ?= =?us-ascii?Q?dso+0GraSKC8e3EMTifULngDIZ4rzyk2WQNhR4TAe2kUnQaN3kzhN0Oksbls?= =?us-ascii?Q?M02aPcYS9eQZ9RxPk6BSk9sxboifnkr0Z32wDEgs5CKOPmRjbK2oR0w4YCr/?= =?us-ascii?Q?V8Cr9k91yG1j0xXgdb0Z2l/QCFWcVXvVu0wox+mmHKgnrsDIx7euTX+kid4Y?= =?us-ascii?Q?xj5My2/dMc0IqqZ89SImy6LhWw13?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MW6PR12MB8897.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(1800799024)(376014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?1SrPUGcHGGyk2kfUz0IHgmLA+IUdnjN4ZMVrQ2/dWGB3tf2C28w7pqbKRVF9?= =?us-ascii?Q?ds7CYMjVV4uAvqo8tqaWHhtSMgVeru6YOMLMnLKHif9AYlN1bQwqbhVhWYvq?= =?us-ascii?Q?Eu4cddpZmGrcxprmux6CVHOLGMKvKtzVqy4Plav/Lhvwv51pwh8KmS48idWM?= =?us-ascii?Q?7sxvm1dFkMcPwbaT/0f7AI8dt7kzkVBGPYVvGMLnhi6M0Kd6/b71JeL/6tFq?= =?us-ascii?Q?9MBTOOfQHL0zLz42ROy+nbdxbLEsFnpiidvfd4Npsjl0G5tIBiH9qU4kziGL?= =?us-ascii?Q?ooufpHnTc0xMsuybTZ64Utnp5rjdxsbbF4ncKWl0Mo81mVe8i5XSAqVGsyYZ?= =?us-ascii?Q?HCBE3MIF/BDblfNybBJ3p3FpvV2dymINoiXCJh/Jq9T6bO0iPXbT34Wq4NgL?= =?us-ascii?Q?s2Fnaxn+yvLx2XzOE1sZCo1OIrH2x1Y8F4lj/5ZKsSuvuDgFTeUEBDoSwPxi?= =?us-ascii?Q?9KJ6IR5v1j4gTRYO2Vu4KqqDbucAQUmY3G3eU1PAWDn6UA+I4EfqjJ3Qkaq0?= =?us-ascii?Q?tdnoP3WOc8tMk6YAJ2jW+FJsNYIRQimBvJFnP6/7cw9/vfeIJzxV0RRD0txV?= =?us-ascii?Q?fxBq6dbBiI2X4i2H0s79muKAuEmJY5/59dWF5/W+FcizfPCFAdNnHgyGgYq2?= =?us-ascii?Q?F5eX6SZQZx3Gu0C4JsIjGTYYyXsvNxVgutfP+EuYczu5Fd5OM06ChAvTvegX?= =?us-ascii?Q?DjdpaWpPNxd+QG7TSSkhxrPPinJgWhC8ZFkPaFlrlplyZacAIGD8jO51OJhB?= =?us-ascii?Q?ew4DHpLel75m823mEWOtig3rUv3HYuZQER2+MOoFOk9YKIPjyrtzbDo+EtN/?= =?us-ascii?Q?nZNUYWAaqwYqNvGvMQr8ZwytU0EB52DBOGqv9U3JiwD7EpDclYSb9MGlBrtf?= =?us-ascii?Q?owE0XSlEO1Q9rYhRwsIQYSv974OG6BUqDwfTAHSz0DAGPSTbLSr33iiZ/PDa?= =?us-ascii?Q?8ffv7+cXuBK/Z60NH+qYPLwYz4+HxIuXKuDNl0Lf2zOsGr9a0Sk0pwqfoJm2?= =?us-ascii?Q?eBebFIQf9G8SGZ3n1y2svSTITCT3dn8yc4NDPoo6EnAXEIMmf+zmucRi2N9K?= =?us-ascii?Q?KecOqXUsErrmmHByEEg8XcjGpzKVVQzCentyaBxqbLHSFvWqUyBzri03RgzS?= =?us-ascii?Q?k9BZHqir4MiJ15UTBKlvziR31tPf4Vx8dnVPFsxqcM9UOPC1QPQWaRZZuWg6?= =?us-ascii?Q?4iwGxYaVq7q0W+aVNbPXu8OlXEN0zfLOhjW7k1QP6td1xcN+1tJSKHX28g5b?= =?us-ascii?Q?F1DlBCzk+t/VNSo4QTfdF5n6R5zcbr7MFHrASVCS5pC7iV/sxSrxc0lGyxk/?= =?us-ascii?Q?F9aGZK1C7Zi+Dy4CenpfRDpVUpxPXrasHuy4XKYfPFv0ClKhaJ6o5Q2a/28A?= =?us-ascii?Q?HWdJkx9Ui19RARBx5KefxUwweLlS64f8vpmGa6DdMZWKyukHBgpg1o5mbJBx?= =?us-ascii?Q?+lhstp4zWhsLauOMnr48ClE+w83hxLOC3InniPjPM2Wup8ktpoQK7VooFrTm?= =?us-ascii?Q?VYXwfsbBcqtvCmXBq/ZlGFFPMZLSsf6UCis2dnnGCCHzQUwQG05p58myfeAe?= =?us-ascii?Q?DzmazTeskwKEGVQWtioo/ZrP0tRG35xx8+8CYNb7?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 469b316f-cd86-460e-d3f8-08dd584bb56a X-MS-Exchange-CrossTenant-AuthSource: MW6PR12MB8897.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Feb 2025 23:00:34.7722 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: C/VTsJWI0Q3AiDrfcxLiKxZMCCzhGvZSJ5vR6+Xu67Egdvt3u79sp8twj94aXPCM5IQo1WGHQILhGSsZcyHpqQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB6936 Content-Transfer-Encoding: quoted-printable X-MailFrom: mochs@nvidia.com X-Mailman-Rule-Hits: nonmember-moderation 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 Message-ID-Hash: INGOFXQBWU2ZBSIWOKC35LWREOCOLFW6 X-Message-ID-Hash: INGOFXQBWU2ZBSIWOKC35LWREOCOLFW6 X-Mailman-Approved-At: Mon, 03 Mar 2025 08:28:44 -0500 CC: nathanc@nvidia.com 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: From: "Matthew R. Ochs via Devel" Reply-To: "Matthew R. Ochs" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1740990598073019000 Content-Type: text/plain; charset="utf-8" Add basic infrastructure for PCI configuration feature including: - New PCI configuration structure in domain_conf.h - Add VIR_DOMAIN_FEATURE_PCI enum and string conversion - Add pci field to virDomainDef to store PCI configuration This will be used to support QEMU's highmem-mmio-size machine property for the aarch64 virt machine type. Signed-off-by: Matthew R. Ochs --- src/conf/domain_conf.c | 2 ++ src/conf/domain_conf.h | 6 ++++++ 2 files changed, 8 insertions(+) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 87f87bbe56b2..acc30ffca765 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -187,6 +187,7 @@ VIR_ENUM_IMPL(virDomainFeature, "ras", "ps2", "aia", + "pci", ); =20 VIR_ENUM_IMPL(virDomainCapabilitiesPolicy, @@ -4061,6 +4062,7 @@ void virDomainDefFree(virDomainDef *def) g_free(def->kvm_features); g_free(def->hyperv_vendor_id); g_free(def->tcg_features); + g_free(def->pci); =20 virBlkioDeviceArrayClear(def->blkio.devices, def->blkio.ndevices); diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h index e51c74b6d18e..5dc7379655df 100644 --- a/src/conf/domain_conf.h +++ b/src/conf/domain_conf.h @@ -2207,6 +2207,7 @@ typedef enum { VIR_DOMAIN_FEATURE_RAS, VIR_DOMAIN_FEATURE_PS2, VIR_DOMAIN_FEATURE_AIA, + VIR_DOMAIN_FEATURE_PCI, =20 VIR_DOMAIN_FEATURE_LAST } virDomainFeature; @@ -3039,6 +3040,10 @@ struct _virDomainPstoreDef { virDomainDeviceInfo info; }; =20 +typedef struct _virDomainPCIDef { + unsigned long long highmemMMIOSize; /* in bytes */ +} virDomainPCIDef; +G_DEFINE_AUTOPTR_CLEANUP_FUNC(virDomainPCIDef, virObjectUnref); =20 #define SCSI_SUPER_WIDE_BUS_MAX_CONT_UNIT 64 #define SCSI_WIDE_BUS_MAX_CONT_UNIT 16 @@ -3100,6 +3105,7 @@ struct _virDomainDef { virDomainPerfDef perf; =20 virDomainOSDef os; + virDomainPCIDef *pci; char *emulator; /* Most {caps_,hyperv_,kvm_,}feature options utilize a virTristateSwit= ch * to handle support. A few assign specific data values to the option. --=20 2.46.0 From nobody Wed Mar 12 13:09:32 2025 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; arc=fail (BodyHash is different from the expected one); dmarc=pass(p=reject dis=none) header.from=lists.libvirt.org Return-Path: Received: from lists.libvirt.org (lists.libvirt.org [8.43.85.245]) by mx.zohomail.com with SMTPS id 1740990617694409.9726493433501; Mon, 3 Mar 2025 00:30:17 -0800 (PST) Received: by lists.libvirt.org (Postfix, from userid 996) id F3AB113A1; Mon, 3 Mar 2025 03:30:16 -0500 (EST) Received: from lists.libvirt.org (localhost [IPv6:::1]) by lists.libvirt.org (Postfix) with ESMTP id 6A710137D; Mon, 3 Mar 2025 03:28:53 -0500 (EST) Received: by lists.libvirt.org (Postfix, from userid 996) id 360F614EB; Fri, 28 Feb 2025 18:00:51 -0500 (EST) Received: from NAM12-BN8-obe.outbound.protection.outlook.com (mail-bn8nam12on2052.outbound.protection.outlook.com [40.107.237.52]) (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 AB2DE14E8 for ; Fri, 28 Feb 2025 18:00:50 -0500 (EST) Received: from MW6PR12MB8897.namprd12.prod.outlook.com (2603:10b6:303:24a::19) by PH7PR12MB6936.namprd12.prod.outlook.com (2603:10b6:510:1ba::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8489.23; Fri, 28 Feb 2025 23:00:47 +0000 Received: from MW6PR12MB8897.namprd12.prod.outlook.com ([fe80::7c55:5a45:be80:e971]) by MW6PR12MB8897.namprd12.prod.outlook.com ([fe80::7c55:5a45:be80:e971%4]) with mapi id 15.20.8489.021; Fri, 28 Feb 2025 23:00:47 +0000 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on lists.libvirt.org X-Spam-Level: X-Spam-Status: No, score=-0.7 required=5.0 tests=DKIM_INVALID,DKIM_SIGNED, FORGED_SPF_HELO,MAILING_LIST_MULTI,RCVD_IN_MSPIKE_H2, RCVD_IN_VALIDITY_RPBL_BLOCKED,RCVD_IN_VALIDITY_SAFE_BLOCKED, SPF_HELO_PASS autolearn=unavailable autolearn_force=no version=3.4.4 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=QJ86Z+gDPLhOooERSX1G6a5qwJ2xOnEPgH7UxlG1Di2pgOfJEMJhKC8j2XCLa7WDyll+pH8F54g9Th8FDxu7wn8eCVQjdStMh2fgCLG86lOZlWODUw66EXDqN+N6U/PqaAkz5R47LFaZSFL6Si9j6Q2H3w4KLXT1KjmHpmhxoi7KOLdhpHnH9uV+tYR/oVU5FgTfkf7iMgNwmkMMkIEhW+Iw7gJQ1NNjQ21XXuDqgeCQKNmRyTZLSR94dle+9itcQw3899X13AoMlfHysHWEtyiTgC05hc2K1BmutLhGIyn6mkxk4rZ9xEhCrJb0yMQRQoVUrMgg3PMQT7u/Eci7lg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=ZHw02+nuAm+da7yKZT0TwMDRvp1pYDqVq06h0GB7teA=; b=MQthe25+5H9twjNqWzuocL+j5SD2NTYvH9gIfjs86OrqEBKOfPcb9HEO9zIeTeSjLYyHFytw0IBCoBAvZ1MAdlQcoTTgiWBHSJieAOHFMWQss8VqY7bS4hyeZkeFSKoz7Q2LEJpD2EdDMY5lO2RJCzpkzBUDjtHQC7KDUSiolkpoZAUxcbKyhWV4S5L+L9moEQJp1BW4B+M4k1UopLqgjNt2bwgNBwCJZ85rbGOXZC5ndBcpnzxr2eePG6IOw0puWYaAOHN0osulnBk6C1YmkzqYX2VlXfBXPqnONv9cw+SLYAccdEAhC4xHVSSCo84M5Z/V21Fwn5BIXjJVGQfbrg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ZHw02+nuAm+da7yKZT0TwMDRvp1pYDqVq06h0GB7teA=; b=htfGDJVJU1Kz9Gqy1Gs9BwgEq1eUvM31NPAyfeNb1rMBBqaHJhoYuxoBR7heCNiXNwP/VXJA+F8xZkBztPHbZji79iRVa3wf4+19GRNbYl4KT62BvY/KA32nMSxIhXYBeuBmiTQIMkwkrHjSI4UCzPFCE0xNah6aIjlgpV3OkHeLuQsGgImWIPunzcRYi0pBq9h060yzVzz4Bv7DvbJkmeX0tt57w45Z4pdtqOEjc/Xb43LD5rO7ftpeUsTQvmflgOfePPN+xCLz6jz51lW0ujsuE/O+RGkLuRU0vaBMPoEATGj+KUgR+okNChDmPgk7yPEBuSUtagDQnr2OkPCFxg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; To: devel@lists.libvirt.org Subject: [PATCH 2/6] schema: Add PCI configuration feature schema Date: Fri, 28 Feb 2025 15:00:45 -0800 Message-ID: <20250228230045.3217069-1-mochs@nvidia.com> X-Mailer: git-send-email 2.46.0 In-Reply-To: <20250228225934.3213582-1-mochs@nvidia.com> References: <20250228225934.3213582-1-mochs@nvidia.com> X-NVConfidentiality: public X-ClientProxiedBy: SJ0PR05CA0050.namprd05.prod.outlook.com (2603:10b6:a03:33f::25) To MW6PR12MB8897.namprd12.prod.outlook.com (2603:10b6:303:24a::19) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MW6PR12MB8897:EE_|PH7PR12MB6936:EE_ X-MS-Office365-Filtering-Correlation-Id: b193311d-80c8-4c20-a728-08dd584bbcb2 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|1800799024|376014; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?8agzLwXk1rACrLwwFNyIi+uF4om4TYRNOfeNCaQ41mehaDljEbeXbkNsiFZW?= =?us-ascii?Q?7L1RzppXUxxFscg/Dx7UWx9Gnff2s/IKpWuLXYQKMFrUM2bfewUNhQDCcrjA?= =?us-ascii?Q?txQW5Z0aSYOxaEuiWv5icWe/bHK2J6XAXrH5tNqS6jPE8P5R2caxY/gJ3EwU?= =?us-ascii?Q?kBb5CwTAKh80tSmvaVuHFcxuQue/cnwGYkas2pStNnk0ykbxGlq+hwIjKzqK?= =?us-ascii?Q?wXRQUUHMkXM74xNW2aEhHFJh2wXBgrzHewYsoLFpPrzLFKWrEmfljebKEu+k?= =?us-ascii?Q?dwItkgqxs6GwSHfZqNR2gNIIxZnKET0wXyaSjZ8Ua8Ff3Zs+YrwTmM2JQgSN?= =?us-ascii?Q?EOB7wooJsiY6DURbSQuQW0XCGueymqNCQmElA6jv5HcCQ++ihtqA+Jdw92MU?= =?us-ascii?Q?zQTf+JbhrdWC14BeuagWlSLDgCdt12mpfFYWO5CMVCzmiMTaA83hr5d1TFMT?= =?us-ascii?Q?lJ5QVTD5TrOStPuQY8v+tmTXgsUAYK92i1pMjskqrCriC1ulq5P24Cz/dEHc?= =?us-ascii?Q?AhF7Q7XKRAeZCFJHZWIsz1ehr8jl8E4NC8yYCSPrncn00V00ZMHpJeZquajt?= =?us-ascii?Q?vj/k00Qi/AsoAdqa6Oy/WJ548G77CBeWRHutcZqKXI1ylU5Y6bENP18BKcDR?= =?us-ascii?Q?0ZSAxLWYjdd3v4oBL+GbGlx2KpltGgeY4i0RahoqkEVFo5Px7uVgeF2O8Tfn?= =?us-ascii?Q?EfaEsyjwTKdQdkyg3Muj7noaI6hvFD9kYIg/aXtAo9DT7av8OcFcnbXH0FT8?= =?us-ascii?Q?wkqz3zJi4JfGG/gBa3AH9NM6W5VmDcOGFHx9h4DWIhpP3oioIHuHBdnVpNkF?= =?us-ascii?Q?Yecd7AWtR9Evg1WiROMWCCSuPOhbJ/E55IEB0szU4FKPdX6SipEWOFhTO9Ki?= =?us-ascii?Q?1yZgESDpBoExgAH2wF9Gj+vTGcoGr8ujbYmiC3AnX+WZrWLt+mxS4RvfEmBY?= =?us-ascii?Q?+nuFnM7C8zvK054L88s+xkI0YQXDJykOMok/oMY9xqrI6uo3QJ2c2oIVKDRo?= =?us-ascii?Q?bIFSwXc+KTUHZy4eE15QJnmLTeKePNNytR+IbmcaRBHUQfHQGvWeeRt33o0Y?= =?us-ascii?Q?+79Oqt8vF20sRfA/D5b2UBTQA0fvH7MRoZ2dMio89h6KVZzHIh/ACUB3845K?= =?us-ascii?Q?Ke0H+/55JLI92V0BP/IWkRwW8d6TCBEWVI28A8Ea5+OCq7xOm7rGISLIobRU?= =?us-ascii?Q?eOPkhLKI0WQQkWRsO4lZEc9c1dg/DcdHaLTVKmxbJBtXw+tro33VHlESE8eX?= =?us-ascii?Q?/4vZ8dBHP1Tc0/+e9e/NNqNw1B/JaCyzXhpTJqOtzZnY3LFyU71nulzu71sw?= =?us-ascii?Q?C29DvcJDGjgfgSnf2TSfneUE29oNPtfXDor8zsHxhi5dnMPHIekE7rrqRtd/?= =?us-ascii?Q?64vdgZoQsItPhaB5joeDoCBDbPCW?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MW6PR12MB8897.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(1800799024)(376014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?r7CY5BBBcBN3yvJsj2d8s73NZQeoliOP0iNABPWaRWdGbVWTTBjo4rzPSgMe?= =?us-ascii?Q?SXf/M1UmnzQdj9axx5DICA/tF6rh7Mt8nHK4kbk+37feP//gHBOA9njEg0q/?= =?us-ascii?Q?PfI5EsS8NB3Vu8/Uuff7FvoIGCf60K4c/RToauH501FWAT4g8w3i37HCSr2+?= =?us-ascii?Q?sycFU6vlW/CPs9bhdz/WvzLPRjQgHjNae+lafAuR4RNg6L22J6yoSc048R7O?= =?us-ascii?Q?Yeld5zClO4zLmRX5BVcSRCXC7woSoCaSk0rRmhPKwFPXZ/bu3aCmrOuXKV7g?= =?us-ascii?Q?95bnNUnZsGU3RSMDViFNm6ciBlNpRSMpDRK2FKzQ1uTtSJqGngvYnATtRXqq?= =?us-ascii?Q?Cp2ak3SoixIansbIkR7QZY8dTmMviVPHTtQs8rhOO0qlFbfsRCcaiGqG6h0S?= =?us-ascii?Q?WnJq4psKYzl2Gi9V0C0fJ5uIUuw8mDuVPPFEhiO+I//2oNaKGA/tkskto0WE?= =?us-ascii?Q?Na0S/YfB/fSz8rKR31ENYTsWaGGDWvQ/iobA6BQt2G+XH8FzRy981wIWvgFV?= =?us-ascii?Q?ZN1ApfrPJN592ZpZ36yWTQnJaXVj9FGz41lKmodYooAFWa7xCNtagofA+U8M?= =?us-ascii?Q?OFsTgzDmTAD5HeQFxf5sG1tduxLK/J32hQ08a8fygv0ahSp2YzebP1h4V1Yy?= =?us-ascii?Q?N7DIX0PbaBsE2aR6R2IbrwBhocFjtYz7rWWPKa8XGpi4E5V03G3CnO9d3ACP?= =?us-ascii?Q?QYwDa+6GPbJxZrJn4A3JUm/uS06P6cMZily/IstcY+b8mcE+NrLTJA0d5N0T?= =?us-ascii?Q?fAuQxYi085Wl07S4o6pjPk2Trv7xNOgt0QdhU59KOoWPFGNU0YVBTCGI55Fa?= =?us-ascii?Q?kHdbTlf2IQkcy9Lxb6BijyuZgwTrstFEFOFRVprGGl3c6yuMznN7u54g8w56?= =?us-ascii?Q?+FkQZkhDoDYq41bitJx8ST8sq9lPxaRaRofLoDMKuItwK/Fdhr3BQi9JhW9y?= =?us-ascii?Q?D1SJVGAii+VeFcL/joWkhg048g67eCfMDB2hLUm3467JfejThXjD6q8adtPC?= =?us-ascii?Q?V0laosbw7NMwDCReTAeEKR5WaAmkwI0rVcwcaZL3gMjL2uYEsJBFD/kuu5ZS?= =?us-ascii?Q?zrjP/8nVLyhWDglwHctlsVU/Hr9cI8v22o8sGUGviwCWiPsZ8yAfkml48amF?= =?us-ascii?Q?02rX3q2SZv/bSmh9a1mjvuTpXEmZlOhPc478s2oehOFtG8L4NfM3knqTlmAF?= =?us-ascii?Q?A8meng+aFiZhwOlyyESLTFVm2jwM1gYoTd/A+hwpXB2GNvNg9Ugn89JoO4Qi?= =?us-ascii?Q?YhZsokm6iX/CHGx4VcxZOiJUr6rtwdS9Jkpu8naMMzqrT7/j+36NhH0oD1kt?= =?us-ascii?Q?fAnb4r+0vNYM0nE5lZkmztOPZjFT3+DDk0QAPEKoNOnMMgjpGSaFst+zungh?= =?us-ascii?Q?oyYlbiyqt3NIM/RNVnbLcFuu+xD05/i57E9SiZufAFZpExOZXcEsSe6+c6mt?= =?us-ascii?Q?2Bts/Coq5rJn0MbgVzLKBc4Wk7KN8gjHWKqbfVAUkZR0uoDlJYQ3GJiaG0S0?= =?us-ascii?Q?SihinzFKpV1nWf+IYHvTqoSsyKGSiViL3Gx55R1FKZAEiTrdsuj+xdmKAiAg?= =?us-ascii?Q?mBNuT6QWYz5e1n1tb0hl/l+tRjHAlt3yDgt+7i7J?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: b193311d-80c8-4c20-a728-08dd584bbcb2 X-MS-Exchange-CrossTenant-AuthSource: MW6PR12MB8897.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Feb 2025 23:00:46.9673 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: iQbiXVD74HGsR1obE0pFXI3kksVIzrKUIBOTSZ7aJNKXdeDjpyunyT7FXtOyEPDHBXxKWeZN9c9NZB5TsaTgIw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB6936 Content-Transfer-Encoding: quoted-printable X-MailFrom: mochs@nvidia.com X-Mailman-Rule-Hits: nonmember-moderation 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 Message-ID-Hash: GPRWUE7B4T2APM2ZGZTQTD7LA7H7HZIU X-Message-ID-Hash: GPRWUE7B4T2APM2ZGZTQTD7LA7H7HZIU X-Mailman-Approved-At: Mon, 03 Mar 2025 08:28:44 -0500 CC: nathanc@nvidia.com 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: From: "Matthew R. Ochs via Devel" Reply-To: "Matthew R. Ochs" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1740990618116019000 Content-Type: text/plain; charset="utf-8" Add schema definition for PCI configuration feature including: - Add element under - Add element with scaledInteger type - Support unit attribute for size specification This allows XML configuration of PCI high memory MMIO size for aarch64 virt machines. Signed-off-by: Matthew R. Ochs --- src/conf/schemas/domaincommon.rng | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/conf/schemas/domaincommon.rng b/src/conf/schemas/domaincom= mon.rng index 96cedb85e867..7f3ac7b8295f 100644 --- a/src/conf/schemas/domaincommon.rng +++ b/src/conf/schemas/domaincommon.rng @@ -6999,6 +6999,15 @@ + + + + + + + + + --=20 2.46.0 From nobody Wed Mar 12 13:09:32 2025 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; arc=fail (BodyHash is different from the expected one); dmarc=pass(p=reject dis=none) header.from=lists.libvirt.org Return-Path: Received: from lists.libvirt.org (lists.libvirt.org [8.43.85.245]) by mx.zohomail.com with SMTPS id 1740990643616622.7597064968182; Mon, 3 Mar 2025 00:30:43 -0800 (PST) Received: by lists.libvirt.org (Postfix, from userid 996) id 94EFD1446; Mon, 3 Mar 2025 03:30:42 -0500 (EST) Received: from lists.libvirt.org (localhost [IPv6:::1]) by lists.libvirt.org (Postfix) with ESMTP id 710D213BC; Mon, 3 Mar 2025 03:28:55 -0500 (EST) Received: by lists.libvirt.org (Postfix, from userid 996) id 5B71314EC; Fri, 28 Feb 2025 18:01:01 -0500 (EST) Received: from NAM04-DM6-obe.outbound.protection.outlook.com (mail-dm6nam04on2054.outbound.protection.outlook.com [40.107.102.54]) (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 B53B214E8 for ; Fri, 28 Feb 2025 18:01:00 -0500 (EST) Received: from MW6PR12MB8897.namprd12.prod.outlook.com (2603:10b6:303:24a::19) by CH3PR12MB8971.namprd12.prod.outlook.com (2603:10b6:610:177::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8489.22; Fri, 28 Feb 2025 23:00:57 +0000 Received: from MW6PR12MB8897.namprd12.prod.outlook.com ([fe80::7c55:5a45:be80:e971]) by MW6PR12MB8897.namprd12.prod.outlook.com ([fe80::7c55:5a45:be80:e971%4]) with mapi id 15.20.8489.021; Fri, 28 Feb 2025 23:00:57 +0000 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on lists.libvirt.org X-Spam-Level: X-Spam-Status: No, score=-0.7 required=5.0 tests=DKIM_INVALID,DKIM_SIGNED, FORGED_SPF_HELO,MAILING_LIST_MULTI,RCVD_IN_MSPIKE_H2, RCVD_IN_VALIDITY_RPBL_BLOCKED,RCVD_IN_VALIDITY_SAFE_BLOCKED, SPF_HELO_PASS autolearn=unavailable autolearn_force=no version=3.4.4 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=BGTiRmkgEhjrZmeaBxXjd+SRYxdGNhLBHL+7swVvZMsUpKKvNVjiRIgyh0oDmAu6mdpCGteG6k1uxmHr5co+HtZGUEs9/ovflRxqfiClAlPmLR1y/+VpktFGTwqZuJGANwaH7DU+Rf5fWrO1SOTcUR8qeczfMJZ1N3qXRJv/jTtM6jaUO4jKDel9MEDTGInxMa8z18xXjyY+v//LTunllMI5pfF5lTUQc5yv6g+BJtDCixZGKjTTavhJi8FFpb6+A9o0N6su3HxVFMOAl62jmHL1v67ohDzwMD70c/lZB7mOagycns72+PzMIJIa+7SJdVDkqPqlxyxI/Y9J67Is0A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=KWsflVLdxs0JkPoD612RKpTnqCCVix25Sx7y9ag4oaM=; b=vcgilnOxDP1bp0bbyxl4O82GkcFGr+FHLR8QPjj7lCV93uStGMw3PA0w/MuHltM7cUmh+OcL145PT0Sevi9d4DRwASNFS/2qk82UZ6MJ8x/6v3i5Vrp2LCweVR49Twzv1/osnKKESNs+pXdudXWIzd+nH7p6gDdpEeGc3m73Fmh/g8+NUoQF/QVT4iCzMSjTIyCTUxODFXeHkEt+uSk75BnqJ1d4lcm3EudyfVNuewPqcK4sxLzVjjMJveXp37HZXBBGP8FESh5JLzZzJUucMiauw0N5ROe7UEAAmaghxyKAWzUnum+yTgf4UafdS2Od0bVvlAAa7NqSWO34Rm5XyQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=KWsflVLdxs0JkPoD612RKpTnqCCVix25Sx7y9ag4oaM=; b=L9zc2FJOrXAMxAlNbYN+IqoY9vwvAVda9xWSCUUVCVuNR5l/77wtzuYLjIINQyDstwiXNXKEkskI+mpdG2JEYY/bQDTUoR8eBx8lFcu1gM+9On9s+YTFLc7AoDkhYsOedm9NHGGL202xKs2gq4X8FWrEyoYWV6SleVZ73pErZW3IMO/+fVAQQBme2ZVxJAbRCZssO6AIKtkJDSP+JI0MIi3p4b3FNg7T7VJ1YmKLREQR2vXae3QhAMaRW5YpIkaua9OQZB/CmhjZ7wfBokH0b5WFVCJHMzCELjeokj/FYaxdnhFzQVFfrRjjeNxkAUcBfwnN49m/RYnK5jW135Fp0Q== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; To: devel@lists.libvirt.org Subject: [PATCH 3/6] conf: Add PCI configuration XML parsing and formatting Date: Fri, 28 Feb 2025 15:00:55 -0800 Message-ID: <20250228230056.3217539-1-mochs@nvidia.com> X-Mailer: git-send-email 2.46.0 In-Reply-To: <20250228225934.3213582-1-mochs@nvidia.com> References: <20250228225934.3213582-1-mochs@nvidia.com> X-NVConfidentiality: public X-ClientProxiedBy: SJ0PR05CA0038.namprd05.prod.outlook.com (2603:10b6:a03:33f::13) To MW6PR12MB8897.namprd12.prod.outlook.com (2603:10b6:303:24a::19) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MW6PR12MB8897:EE_|CH3PR12MB8971:EE_ X-MS-Office365-Filtering-Correlation-Id: 03ce011e-2919-465d-1bb6-08dd584bc2b1 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|376014|1800799024; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?pBE78Dj1Q5JO0sIyqUTEQ/qHGff7TQTiY6IQRaKDuZuyF9qk/tlZIlDpyuP7?= =?us-ascii?Q?bYkbxbnuCksLkPgBlg1PcVBKGr3Khqai1mc1PYXnKZomdw506QV1HE9tgCl2?= =?us-ascii?Q?W9UYgCBzYKvMuYRam+DrjdAboHLpZCFDeEBUaU/yIH3gvmSX/tClhpE59BC7?= =?us-ascii?Q?nQ2qa01PI/uQ+iBgHm0DyCs5XrTxPljikXw84tP03bNbnUQbLcRIGMKqW56/?= =?us-ascii?Q?QuXuQxJMNyJC0V03X1bvFkQZJar/7RJvWB/oqlk9kqWeUwhbwXUkG1PbUSBl?= =?us-ascii?Q?7JmtdjTuFLHoKdM7KHqllR6n60xsv367G+VmvjNtFcNInqmsGAS2b2fPuohK?= =?us-ascii?Q?5/t/o1QAVN9UHKWej+qR72nrr31QidTPbbUMHBzEoX8u3zLEcSUq1B6OqGAe?= =?us-ascii?Q?LEQY0cqmRnPzimy0QxaVCgriJQjiJZh2OVXKIMBeOVucVXfZnxa6UbOVQCO1?= =?us-ascii?Q?e9Pu0T7Z5miiaNyn3mqOFXx14njMl1C/7LV4TqQPeROkWFy60Hc02lAqIQAT?= =?us-ascii?Q?8pwl8YYCfqMwRDbp6rXZBgxnqAlFfEU6H/j/I4Md4hG2kaRTh4cXrUJNnoSF?= =?us-ascii?Q?zKo2RYlWzNkwuA6nd5X/ABAtkulNZpR7IndaLbh6aJoKGllWojM1d76L7hx3?= =?us-ascii?Q?cxdfUiWo3MVmpLyETKJWXbJeohyQJM2zmaSPFBbvmnHz5hZuNj4Evygw6OuS?= =?us-ascii?Q?INf6I6lNwee8g3TdLj8yHJETWqjBt3cEmFg4bnCqsc4fPJM7G1/91+pAuIz+?= =?us-ascii?Q?ZtGH2kDAGaL5fErlUGqaO6R5CifMwzNCofbCxegSDBg/sRXsJS3an//4TsAw?= =?us-ascii?Q?z1NiLNu+CU33w9so/WSc6kOhZ6AYBFWsL0khO81aUQ/FgO4Z9fl9wAZpIEnm?= =?us-ascii?Q?qO6XLmvcVKFVUNZ8v5qeEjm7vPJGmmX1Ze7iWNJTwDbqV88MZ0coCdjXuUEV?= =?us-ascii?Q?hw5rdWKiMdHJoTofGeyYK6/XnuUd2nkciLrLXZg3j8CoBXJrQlWhDgdX1UUi?= =?us-ascii?Q?g8CJwt/bTtpbc2jeDWZFHr/7LY951Smr5pL7lU6iDDcxoJG12+1gry3d1Nvw?= =?us-ascii?Q?2UfH9+jaaVZxMWWY60Zl5UKglUASLYKa+jWK2KtyR6dSc6YqLjwKm9mUiGNw?= =?us-ascii?Q?o3R+nA+kwIemX+LsI1YLr+WFvHYBFGiWOjKvyBFEYYx8Lj2Y5VNEe7WC6AoY?= =?us-ascii?Q?cKId00+RQ5mT0TkxWOq+Zzr1LSWEHNTOGxDuZ6g/K52wqjn6epxqoEk2epxG?= =?us-ascii?Q?lJ7qa0h1g0XOewx5TKRq1HYRIn88tdyKLTWY2WUoqz/+baokS2qR7K7uOqJo?= =?us-ascii?Q?m2B/HeGDrBmslMHLrRQ5a8AX3+G00QJZ8CmGKmakJlfkI1poxaR5mQDyR6we?= =?us-ascii?Q?TitPVrOBgpe8ZuNHF7KUPwNKwoEP?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MW6PR12MB8897.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(376014)(1800799024);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?PwU4HCGnOuMZZmUA0R7SsW2CL6wez+iJ5a2n2bnCWWNzB5P2HjeQh9luV3Sp?= =?us-ascii?Q?PvB/IHszDTUVjGOmAALrNVzbTW8zAGKjxLtvGmKVkGoxdZ/cEMDhRH+btuLT?= =?us-ascii?Q?nOvi/NG6G1dOhK+1B+T5f/sPMzYv3uzTGzagaDWesplm7nDWUecx7W2XmTwS?= =?us-ascii?Q?GBOlnLYNR660LhzOjRQSwj3vJQIq1Hy+JwGCrx2cUiZBRek4SHBEkD0GuZeD?= =?us-ascii?Q?IppYUQxJTy+dlVz3NXOmnMl3JdStDeDseD6XtYTX1O+hPNbmZqS/CnB15o6X?= =?us-ascii?Q?u5wTW0K8Nu6FO9qYCUnF83VWoI8UyyD80laBwZfbj0OP0mbTqncZQkpCcpsp?= =?us-ascii?Q?E1RfeK0LKOgOoOFn/0EpD91ibdOQqNenSNfgDXyhwgK8mzxpFvH25OQdjw0G?= =?us-ascii?Q?NNaiztlbf+ho3pqx/9c9UQ+sVYw1MEBOrhCBeXSlpC8+pduG3J8YjXE2lhsh?= =?us-ascii?Q?7+z+S/ohvB15fJayWnoAbLVAMxYK+mPB0cNTz7i596jLhBKv3dRiMy9LR9Zo?= =?us-ascii?Q?sInP2u/RevIpyxl+0eTs88ySMJctPXvmvhvX2FB4lHBz0q39ANp5hgsH3Nlk?= =?us-ascii?Q?+W23t3OsLmyW9phyVyrk3ZpgHWGCjHZdsMxE0k8dTZ5p/Kp4y8RTgXudXd6u?= =?us-ascii?Q?ZRJ9/Y5ip4Rga5Ep0htEOdvJw5TGGOkYnBpkMqqClxbgNULRysuJtzzYCclt?= =?us-ascii?Q?MsJFQhaTQPJCCfP7evY+hK59sfg5afWFrraRrmbAmkuodam5zs7YVS7nBGfa?= =?us-ascii?Q?fwM2ZOZ+Beuw1+9HOz+2yFrYO9/9vNFdg68Ga7PotKUz5liXCwK3Wxm7NmtK?= =?us-ascii?Q?i4EcNrNEik8a0mNw+5GPJskgDAtOzQXWmfxfEWxgCERhgS1xDldfFAG8sgrh?= =?us-ascii?Q?g2OTZ/sAwn8ojj9B6POJa8FoV5ccCfMwGX9MefPOOwsv8cnZLEXHtUXfEk+O?= =?us-ascii?Q?WNEmUVoJ1Q6xlK8GZZ1bOiAaUQ819X+6kR3tvHpCvFVD4MOJxQqsNzbJJz+q?= =?us-ascii?Q?F55qYB3ntOmceDfXcI3zJukI9jCBENQWXfud5MkLEgN0R/gyGj1Grof0EhME?= =?us-ascii?Q?p0Ku8xX/svjUESwnM8BgaEBrhQzT7N+NQr6SwWq1vD2wDbvP3cMnDzkI/sAE?= =?us-ascii?Q?GRvuk4csHNczkkCe1zY8wWaTStKhv2Fdgkwdw3hMShY7YchdpivX5Cgu4cGj?= =?us-ascii?Q?4bJ4ciDKFTJQO1WUy4AQeI6JgWa+jgEejaILyMWeX/cSGkQhozikA5qS5Jgx?= =?us-ascii?Q?ilcWVAHcr7pPfzmeOKQ7AnQ7NcBhJppCt9oSk5tJHJcOThCSHzEzyUUf3gtL?= =?us-ascii?Q?H1ZgXWH3T13/+srgk7EzHWIsCIyR4xyaAWJBozDtmTFlR16k7c8Iw2pcJkAr?= =?us-ascii?Q?Y4d6VlnW04e2YkIIyTcKsmuiQY7cSrKMMmAlnWdhzmlRwsG/yXNXkdLSrvuY?= =?us-ascii?Q?2gOxV4tQsTZz/XHUQzqECa8fK9AVYUNJa8I7h4X+ygTOoea/4Mno7/FN5Zgj?= =?us-ascii?Q?ASeVVwCnvBPmQqiK6Y4A2XnseuGEys6ytmBeVVIw8DCreEW+PfQvQeWgtur9?= =?us-ascii?Q?8GpTqQRi8x0czI7/8jA19kvbBW6zkflkL3bSxg9e?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 03ce011e-2919-465d-1bb6-08dd584bc2b1 X-MS-Exchange-CrossTenant-AuthSource: MW6PR12MB8897.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Feb 2025 23:00:57.0434 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 933QWtPLXaFmMSkif83wlr97HCiQrepfLX8LIr2Q6cGz9IrqPhe9vm+HZejjFNGdx/efMKQ2xzREIOyJhO815Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR12MB8971 Content-Transfer-Encoding: quoted-printable X-MailFrom: mochs@nvidia.com X-Mailman-Rule-Hits: nonmember-moderation 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 Message-ID-Hash: A7FJSU7AXZ7J3H7OB2FWBIGRGU2GBBNL X-Message-ID-Hash: A7FJSU7AXZ7J3H7OB2FWBIGRGU2GBBNL X-Mailman-Approved-At: Mon, 03 Mar 2025 08:28:44 -0500 CC: nathanc@nvidia.com 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: From: "Matthew R. Ochs via Devel" Reply-To: "Matthew R. Ochs" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1740990646130019100 Content-Type: text/plain; charset="utf-8" Add XML parsing and formatting support for PCI configuration: - Add virDomainFeaturesPCIDefParseXML function - Add virDomainFeaturesPCIDefFormat function - Wire up parsing in virDomainFeaturesDefParse - Wire up formatting in virDomainDefFormatFeatures - Use g_steal_pointer for memory management The highmem-mmio-size property can now be specified in domain XML and will be properly parsed and formatted as a domain feature. Signed-off-by: Matthew R. Ochs --- src/conf/domain_conf.c | 101 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 101 insertions(+) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index acc30ffca765..126ae1e092b9 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -16967,6 +16967,48 @@ virDomainFeaturesTCGDefParse(virDomainDef *def, } =20 =20 +static virDomainPCIDef * +virDomainPCIDefNew(void) +{ + virDomainPCIDef *pci; + + pci =3D g_new0(virDomainPCIDef, 1); + return pci; +} + + +/** + * virDomainFeaturesPCIDefParseXML: + * @ctxt: XML context + * + * Parses PCI configuration from XML under features/pci. Currently only + * supports the highmem-mmio-size property for aarch64 virt machine types. + * + * Returns: parsed pci definition or NULL on error + */ +static virDomainPCIDef * +virDomainFeaturesPCIDefParseXML(xmlXPathContextPtr ctxt) +{ + g_autoptr(virDomainPCIDef) pci =3D virDomainPCIDefNew(); + unsigned long long size; + int rc; + + if ((rc =3D virParseScaledValue("./features/pci/highmem-mmio-size", + NULL, + ctxt, + &size, + 1024 * 1024 * 1024, /* Default scale: G= iB */ + ULLONG_MAX, + false)) < 0) + return NULL; + + if (rc =3D=3D 1) + pci->highmemMMIOSize =3D size; + + return g_steal_pointer(&pci); +} + + static int virDomainFeaturesDefParse(virDomainDef *def, xmlXPathContextPtr ctxt) @@ -17213,6 +17255,13 @@ virDomainFeaturesDefParse(virDomainDef *def, break; } =20 + case VIR_DOMAIN_FEATURE_PCI: + if ((def->pci =3D virDomainFeaturesPCIDefParseXML(ctxt)) =3D= =3D NULL) + return -1; + + def->features[val] =3D VIR_TRISTATE_SWITCH_ON; + break; + case VIR_DOMAIN_FEATURE_LAST: break; } @@ -21195,6 +21244,25 @@ virDomainDefFeaturesCheckABIStability(virDomainDef= *src, } break; =20 + case VIR_DOMAIN_FEATURE_PCI: + if (src->features[i] !=3D dst->features[i]) { + virReportError(VIR_ERR_CONFIG_UNSUPPORTED, + _("target domain pci feature %1$s does not = match source %2$s"), + virTristateSwitchTypeToString(dst->features= [i]), + virTristateSwitchTypeToString(src->features= [i])); + return false; + } + if (src->features[i] =3D=3D VIR_TRISTATE_SWITCH_ON) { + if (src->pci->highmemMMIOSize !=3D dst->pci->highmemMMIOSi= ze) { + virReportError(VIR_ERR_CONFIG_UNSUPPORTED, + _("target domain pci highmem-mmio-size = %1$llu does not match source %2$llu"), + dst->pci->highmemMMIOSize, + src->pci->highmemMMIOSize); + return false; + } + } + break; + case VIR_DOMAIN_FEATURE_MSRS: case VIR_DOMAIN_FEATURE_TCG: case VIR_DOMAIN_FEATURE_ASYNC_TEARDOWN: @@ -27903,6 +27971,34 @@ virDomainFeatureTCGFormat(virBuffer *buf, } =20 =20 +/** + * virDomainFeaturesPCIDefFormat: + * @buf: buffer to write XML data to + * @pci: PCI feature data to format + * + * Format the PCI feature configuration as XML under features/pci. + */ +static void +virDomainFeaturesPCIDefFormat(virBuffer *buf, + const virDomainPCIDef *pci) +{ + g_auto(virBuffer) attrBuf =3D VIR_BUFFER_INITIALIZER; + g_auto(virBuffer) childBuf =3D VIR_BUFFER_INIT_CHILD(buf); + + if (!pci) + return; + + if (pci->highmemMMIOSize > 0) { + virBufferAddLit(&attrBuf, " unit=3D'G'"); + virBufferAsprintf(&childBuf, "%llu\n", + virBufferCurrentContent(&attrBuf), + pci->highmemMMIOSize / (1024 * 1024 * 1024)); + } + + virXMLFormatElement(buf, "pci", NULL, &childBuf); +} + + static int virDomainDefFormatFeatures(virBuffer *buf, virDomainDef *def) @@ -28261,6 +28357,11 @@ virDomainDefFormatFeatures(virBuffer *buf, virDomainAIATypeToString(def->features[i])); break; =20 + case VIR_DOMAIN_FEATURE_PCI: + if (def->features[i] =3D=3D VIR_TRISTATE_SWITCH_ON) + virDomainFeaturesPCIDefFormat(&childBuf, def->pci); + break; + case VIR_DOMAIN_FEATURE_LAST: break; } --=20 2.46.0 From nobody Wed Mar 12 13:09:32 2025 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; arc=fail (BodyHash is different from the expected one); dmarc=pass(p=reject dis=none) header.from=lists.libvirt.org Return-Path: Received: from lists.libvirt.org (lists.libvirt.org [8.43.85.245]) by mx.zohomail.com with SMTPS id 1740990672296415.779883848924; Mon, 3 Mar 2025 00:31:12 -0800 (PST) Received: by lists.libvirt.org (Postfix, from userid 996) id 361BA132D; Mon, 3 Mar 2025 03:31:11 -0500 (EST) Received: from lists.libvirt.org (localhost [IPv6:::1]) by lists.libvirt.org (Postfix) with ESMTP id 5DE27136E; Mon, 3 Mar 2025 03:28:58 -0500 (EST) Received: by lists.libvirt.org (Postfix, from userid 996) id EAA1A11D2; Fri, 28 Feb 2025 18:01:12 -0500 (EST) Received: from NAM04-MW2-obe.outbound.protection.outlook.com (mail-mw2nam04on2076.outbound.protection.outlook.com [40.107.101.76]) (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 D6A72AEB for ; Fri, 28 Feb 2025 18:01:09 -0500 (EST) Received: from MW6PR12MB8897.namprd12.prod.outlook.com (2603:10b6:303:24a::19) by CH3PR12MB8971.namprd12.prod.outlook.com (2603:10b6:610:177::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8489.22; Fri, 28 Feb 2025 23:01:05 +0000 Received: from MW6PR12MB8897.namprd12.prod.outlook.com ([fe80::7c55:5a45:be80:e971]) by MW6PR12MB8897.namprd12.prod.outlook.com ([fe80::7c55:5a45:be80:e971%4]) with mapi id 15.20.8489.021; Fri, 28 Feb 2025 23:01:05 +0000 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on lists.libvirt.org X-Spam-Level: X-Spam-Status: No, score=-0.7 required=5.0 tests=DKIM_INVALID,DKIM_SIGNED, FORGED_SPF_HELO,MAILING_LIST_MULTI,RCVD_IN_MSPIKE_H2, RCVD_IN_VALIDITY_RPBL_BLOCKED,RCVD_IN_VALIDITY_SAFE_BLOCKED, SPF_HELO_PASS autolearn=unavailable autolearn_force=no version=3.4.4 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=iAQGFXGIW3modYYixWWAE4qL5zqsmY1Zt9BDDp8sjD6NAepkhbB0NngaWpzfMzDxriy7j0+1Kw2X450Tu/HVAODi7eczp2KuSGL/oHt+dvCwGaGhkG2Y6/lZvpmKDwQ+zc7I37eliUHzXf/W+kKpHCocQinAJ+5rvmtoIMKa/OyuyJOsO9abG0+xG/dMadTKGEiwvRCgr6VxGyMM4K/ASca/gXZhX/6J8cOtuarCCD/SIvKcOvOzJLvf81WWzT91V+G0Ci2iB83SzGeWFDhEPYhnumqNm1fKGKhn1z1xf061D7/2DrkMDK9WYZtyip1f0lS2yXwkNZkmLjO6L5n2+w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=/d8bbg05HLu842NRnfKm8IVLVuh0tNcDpRH1+FErrBI=; b=fuwp8W8P3IpYljysd+54Sy8N8fTAI7jo4DVpJOvna9fOCeRNSqexuSg0Q5+pieAZ0oYJT9mErkkmj/7NXq4x22xGwCYscNdyP1sgZrfXC2FZT0zBC5c8TaUDvbtRvrRrhg8EY2KzDHdb7X5I3dxHw439SmhFN6IipQBGVtbnxcjiMZ+MqDlwozwdbjx6vU363cVnq7Fh//X9hbiBESbgU7RyGDo2xKzMOM+Qh9uezOM6D+0zfpHAmjfP2aL7BOWwB0Yr4NoDIVasEHI7eI4wOsasoCMpQNlZhhQZ5Gkth11q+BJsRVIGoRQ5hgYZmNi8EPj7HhGmpDaqsMC+ezQY6A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=/d8bbg05HLu842NRnfKm8IVLVuh0tNcDpRH1+FErrBI=; b=NA2OS+LrtXhjR/p248tNLbchhBSch3gwLpVo5dP17rXxhf50byVoJIqFMMb6kelxeDCBKyjqOU/sZMJAAIFB8mwjJSNBRihujg4qsqoriqG/J1kOCLvHTlOZDbWRGVED/dM1hi+bQJCnRnl+7bNLZ5iWoj65tTnSAjfO6px8ZNBGAzNzoEFBOhy/nnoE/oXs/uTKLmoQLTzZMNvBGTw8kMXEF2JJc/h0+DMVvjjvmxsM42W8xuWet0Fyda3nUKs5gV5gi18vMMqVMNQoew0dR9eployz7ujfqk5QS8dC5gbhX6BKrd+BHUrbYKOiui5Iv/UK2+ao+9ccOdd8MpWLvw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; To: devel@lists.libvirt.org Subject: [PATCH 4/6] qemu: Add capability for PCI high memory MMIO size Date: Fri, 28 Feb 2025 15:01:04 -0800 Message-ID: <20250228230104.3217852-1-mochs@nvidia.com> X-Mailer: git-send-email 2.46.0 In-Reply-To: <20250228225934.3213582-1-mochs@nvidia.com> References: <20250228225934.3213582-1-mochs@nvidia.com> X-NVConfidentiality: public X-ClientProxiedBy: SJ0PR05CA0051.namprd05.prod.outlook.com (2603:10b6:a03:33f::26) To MW6PR12MB8897.namprd12.prod.outlook.com (2603:10b6:303:24a::19) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MW6PR12MB8897:EE_|CH3PR12MB8971:EE_ X-MS-Office365-Filtering-Correlation-Id: 88ef3c25-3635-47e8-1b4b-08dd584bc7e1 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|376014|1800799024; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?w3TWwiFFbJ91/SdZ9w11VRZ2MddBpI3SlkignTZcKXiMtQ5IPnMfhH1ZCDxp?= =?us-ascii?Q?0uB6SyjOS1hktnfjsuL6ojITJIbMzc6Mfe+F9YYVmWHgymqR6yZDWGghvc7G?= =?us-ascii?Q?G1sCdjrOoVxiMLLYO2qFKx0cVZBuu3iFhkwPmha5bnSOpaq5/hYHdIzIlJ5G?= =?us-ascii?Q?8NIrA7MkBnoGt8y9xTPCOWKTVpehV/l93iO76X1T2zW43iW+jgMPippTykP2?= =?us-ascii?Q?jPtmlFharU3R+iqwoZhY6eCUYTb9fcuJ544MVCW4uhXL9KMO6ohD3MQZ2sND?= =?us-ascii?Q?g9rSb3GF3Y4hgENM1tFOdI7TkKhXB9KnHc/z1APNUDWQo+/Nm+ccWRVVl6W9?= =?us-ascii?Q?ER0RrblmVgE09oM7zg8lLjbSzEd0J8AxU1bhcnAizQouPFEQuwOjOESjpz/p?= =?us-ascii?Q?3dllmtEQLQJt7BIBNYeIq37lJe68KryAqOzViYh7RSoEeL1O4R0IhODV/IWn?= =?us-ascii?Q?XGJSnwhCkj74ogp77YaaC5z0tHrIeGnCVJX6jOBpTp6ddDZPv5oZ7lCtXHqJ?= =?us-ascii?Q?NDLbi07RbOYkGzExGuQYCtkC2VQLk9AV578X1mGa10hJDZRVvkUScvFW4waT?= =?us-ascii?Q?+423ZetCQPcfyQiKWQkCB3Tmk9V6+D2VB7qjr24snY5w5QEuPb8uj+rmgJg7?= =?us-ascii?Q?Yq//gvdKS4ZVOt8BxA6PELZ/NOIinCIAsqpHUfqSqBG2dczvKD93fOupyjBb?= =?us-ascii?Q?yuUk3pG4tT+0ssHXTFAM0ofZE2bNjweI7bMCjTBB1ciswcB6Up+ptOfvtcdS?= =?us-ascii?Q?ijfVEx08ZMDonngB3lk4XA3dMayKtad3fpJdzvrRygRhKzqZ7YjFzUGQEmln?= =?us-ascii?Q?aoRi+tPx8Frk2snYjFEqfPtMcSrfVjWl9QkhJJ0YVRXL2jvWKYdEG9XKaAtm?= =?us-ascii?Q?x6SO2eqgeAqZK/XvLofeFMH6WmlxGpNR8bZi/gijWUHghpjzhRYxrLu34VFG?= =?us-ascii?Q?UA5/DTxhrwUqQEI4jdLmhgmB/eR3F3K6O7KbJv7zhTUtyZkSKl5bO0mUbPiK?= =?us-ascii?Q?9Xs29HM7m2AoiEXsxtvO8XZnyuEzbLypM9D92h3XBSinfKHGSUuCKoNGQZmv?= =?us-ascii?Q?mvXbzaHuA+bU+svtzXnf+qK0RuR95OExhx7M55u21j6xOl2ljrhf5AWOiGI9?= =?us-ascii?Q?w5JVehG6WwYkCPBq7c/yR18/XSpWrtqANkxqo0BUWY8yrCxIi3eG5aw5kXD4?= =?us-ascii?Q?KDJJ/HvDoLcXT5p8TV+0HThf+ORF2oEtrt5eT2d4nSye31U8MXerNpyC3/Od?= =?us-ascii?Q?y9hcr057zROu7x/KZh4axOeDCDrMIQEaRNCYrgCcHyb+HhsJD6EWCwEsnleO?= =?us-ascii?Q?U579/uKY3fT43OlIpNlndc/ydb89Q6xMwsTTd/zlByRmXMzpzoLHPHhFJXm7?= =?us-ascii?Q?c1/rpL+lAX1YAFFGccIcyVaeb2tf?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MW6PR12MB8897.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(376014)(1800799024);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?mHIoAWRVn0ZZbmY4ZRn1uWkGT1LFSwI7Y99qoPfROf6+AIoCqddbtk8DdwJ2?= =?us-ascii?Q?jpfjCj9aYkxZ68mR95lBBlh7z1uoIxHDSwV1jzyYFXPGJh7urv4SBO2KlFtC?= =?us-ascii?Q?Wouh/5SG2IyD1Xeg1Gnr5slX9r2LWuAldBztA5UNd7oTt6o0GW6cKqAOLZPz?= =?us-ascii?Q?cBH9F8Gm1z2qUfuwjWV5V5fAUAnzhdpAJCNr/BrJpwuh9lGBxPFNpTB+DN5/?= =?us-ascii?Q?CSqrgz9a8eNgMg+FTYXHsrZm366kpB7pRMc5xdj69TiNKGSJVNerJFXnIZWt?= =?us-ascii?Q?pvrblUW8Q76GlMuV5dqFVt9dElhmsMT2RQW56fvVxG9nKocTj+1SS8TqDOJC?= =?us-ascii?Q?gyOBu15WHZQvoR5KTYvmGUoNUFK/t12mb5t95qN8CFrzA6aoHFuQ2k3F87bZ?= =?us-ascii?Q?ldLOVKNw5R2qbb4kj3yMwtNeIYuCvNlFF5xlcSlf4+pppj/zk71y/9H9wFdp?= =?us-ascii?Q?kev/B2fRB04YQryymJvzWU+QX2XyY6OayqLUeTzuQI45HXGipUQFRlJk5b4E?= =?us-ascii?Q?FrBh+GP2F403kRcBXpL1qVKMVSa+GAjP+zcEnaX/w6lNEN3GBD11A7G61gKv?= =?us-ascii?Q?RDGO900EE0IdrNjhmcoWVL825CyNBketJIHmBOSAD5kf4mV3BhD3yBn0TTke?= =?us-ascii?Q?BeGRYJ2Ii8NoeQKps+0mvAnYYGmA22s5JZd6zbjG43TRNIx+l83VVt6wGqKT?= =?us-ascii?Q?3W/uZfyX9+gNVOVtn7nKIsn9XFaAw6IE5qPv3BQnlHkJsNqDQhqEs7F6yAvS?= =?us-ascii?Q?q01o6oAz/DlzC7wPyZFaM3+w7/EwKhae0E4Qgay55irdd0aGoxm66I+B6LhV?= =?us-ascii?Q?YV39Z9AyE5qoyzfKGQH3PGjklqVNUQcgmjYtjKTFJy4b7r7DMjh+ht9GHRDW?= =?us-ascii?Q?ifzh6EM4ijlTujtsFoNW2F7/x9SpbygfT+hcDlNEuIfA4sz2opn4GpV5LOCr?= =?us-ascii?Q?xd64hHUc9G4fHL6l0Pi+QfpSuE9i5rSeerTvx7k9JkbQwIxPh0uJjxRzQaHS?= =?us-ascii?Q?rW7GWN0dlENbu42idliBvqgTy4SzW+v4UYt07ZF93pW/i1DXDnAl8a/fCvAZ?= =?us-ascii?Q?JnZ3MeEkSMQ4Z6sf2AALfaMeLYEwbNSmyyMuQlVNRRniE7ZuBGXd48tAFnzx?= =?us-ascii?Q?36pgYfEC2yd94qOAPge5D9U85yaOuZLv8Wq+qut33JEgOf/VGajQqMJoUyyt?= =?us-ascii?Q?u8X0nMWd9CQGKc9CBvdjD0kNCJ1sC4fyUcKAMhk6zlnJriiH3abfyta4QT2z?= =?us-ascii?Q?zdRGajietSNmNrZBA9k2ye21bMtskGF0p/2m6sobzhKxUAOUsWO3t5F1hImO?= =?us-ascii?Q?tWMH1MrhpPrHN4EskWZDO2KbbLu6idCY5kBHCDXlP8xatTn7BEe0xLJj1STa?= =?us-ascii?Q?G9/ia1O3JU5ftIPDEKz3Dng8h+FH7xkNQS0Ydwg1q+VgAKp873pCRr3eXSUy?= =?us-ascii?Q?So4ViVQpLeeywoypudsT4hv0DU7+B+TEz+SupU21kNm89wwn74/RFjwGhF0j?= =?us-ascii?Q?Tfy8G09IjfdHF2TABNGZreSC0YpBrnvxaun9X5iPsZV1Wxo/6SGswY5BTBJi?= =?us-ascii?Q?B7McPq2E1yHC1d/X+Dq7rYVIavuFCfKUL+POjdjB?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 88ef3c25-3635-47e8-1b4b-08dd584bc7e1 X-MS-Exchange-CrossTenant-AuthSource: MW6PR12MB8897.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Feb 2025 23:01:05.7549 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: tzjjxT/a0HLMe8oCDQtaEnUet1hCoPvr7WT14DVDmykPg1/yPLjXciW5qwH+/LMmv7Ldn/lRbD6iObN3Vg82jQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR12MB8971 Content-Transfer-Encoding: quoted-printable X-MailFrom: mochs@nvidia.com X-Mailman-Rule-Hits: nonmember-moderation 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 Message-ID-Hash: FG2VLLKAYFRRYKAMZSU56WDNYM7JMCDO X-Message-ID-Hash: FG2VLLKAYFRRYKAMZSU56WDNYM7JMCDO X-Mailman-Approved-At: Mon, 03 Mar 2025 08:28:44 -0500 CC: nathanc@nvidia.com 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: From: "Matthew R. Ochs via Devel" Reply-To: "Matthew R. Ochs" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1740990674247019100 Content-Type: text/plain; charset="utf-8" Add QEMU capability for PCI high memory MMIO size configuration: - Add QEMU_CAPS_MACHINE_VIRT_HIGHMEM_MMIO_SIZE capability - Add capability to virt machine properties - Add highmem-mmio-size virt machine property to aarch64 qemu 10.0.0 capabilities This allows detecting support for the highmem-mmio-size virt machine property in QEMU. Signed-off-by: Matthew R. Ochs --- src/qemu/qemu_capabilities.c | 2 ++ src/qemu/qemu_capabilities.h | 1 + tests/qemucapabilitiesdata/caps_10.0.0_aarch64.replies | 10 ++++++++++ tests/qemucapabilitiesdata/caps_10.0.0_aarch64.xml | 1 + 4 files changed, 14 insertions(+) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 23b466c36ef1..2a9797c295c7 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -728,6 +728,7 @@ VIR_ENUM_IMPL(virQEMUCaps, "machine.virt.aia", /* QEMU_CAPS_MACHINE_VIRT_AIA */ "virtio-mem-ccw", /* QEMU_CAPS_DEVICE_VIRTIO_MEM_CCW */ "blockdev-set-active", /* QEMU_CAPS_BLOCKDEV_SET_ACTIVE */ + "machine.virt.highmem-mmio-size", /* QEMU_CAPS_MACHINE_VIRT_= HIGHMEM_MMIO_SIZE */ ); =20 =20 @@ -1770,6 +1771,7 @@ static struct virQEMUCapsStringFlags virQEMUCapsMachi= nePropsVirt[] =3D { { "iommu", QEMU_CAPS_MACHINE_VIRT_IOMMU }, { "ras", QEMU_CAPS_MACHINE_VIRT_RAS }, { "aia", QEMU_CAPS_MACHINE_VIRT_AIA }, + { "highmem-mmio-size", QEMU_CAPS_MACHINE_VIRT_HIGHMEM_MMIO_SIZE }, }; =20 static struct virQEMUCapsStringFlags virQEMUCapsMachinePropsGeneric[] =3D { diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h index ee71331a09d8..3f48705bbad0 100644 --- a/src/qemu/qemu_capabilities.h +++ b/src/qemu/qemu_capabilities.h @@ -707,6 +707,7 @@ typedef enum { /* virQEMUCapsFlags grouping marker for = syntax-check */ QEMU_CAPS_MACHINE_VIRT_AIA, /* -machine virt,aia=3D(none|aplic|aplic-i= msic), RISC-V only */ QEMU_CAPS_DEVICE_VIRTIO_MEM_CCW, /* -device virtio-mem-ccw */ QEMU_CAPS_BLOCKDEV_SET_ACTIVE, /* blockdev-set-active QMP command supp= orted */ + QEMU_CAPS_MACHINE_VIRT_HIGHMEM_MMIO_SIZE, /* -machine virt,highmem-mmi= o-size=3D */ =20 QEMU_CAPS_LAST /* this must always be the last item */ } virQEMUCapsFlags; diff --git a/tests/qemucapabilitiesdata/caps_10.0.0_aarch64.replies b/tests= /qemucapabilitiesdata/caps_10.0.0_aarch64.replies index 5ef02f7ae41d..65b77e8baafb 100644 --- a/tests/qemucapabilitiesdata/caps_10.0.0_aarch64.replies +++ b/tests/qemucapabilitiesdata/caps_10.0.0_aarch64.replies @@ -33843,6 +33843,11 @@ "description": "Set on/off to enable/disable high memory region for = PCI ECAM", "type": "bool" }, + { + "name": "highmem-mmio-size", + "description": "Set the high memory region size for PCI MMIO", + "type": "size" + }, { "name": "highmem", "description": "Set on/off to enable/disable using physical address = space above 32 bits", @@ -34469,6 +34474,11 @@ "help": "Set on/off to enable/disable high memory region for PCI= ECAM", "type": "boolean" }, + { + "name": "highmem-mmio-size", + "help": "Set the high memory region size for PCI MMIO", + "type": "size" + }, { "name": "highmem", "help": "Set on/off to enable/disable using physical address spa= ce above 32 bits", diff --git a/tests/qemucapabilitiesdata/caps_10.0.0_aarch64.xml b/tests/qem= ucapabilitiesdata/caps_10.0.0_aarch64.xml index 3f46ab55d84f..ea7862c459ef 100644 --- a/tests/qemucapabilitiesdata/caps_10.0.0_aarch64.xml +++ b/tests/qemucapabilitiesdata/caps_10.0.0_aarch64.xml @@ -172,6 +172,7 @@ + 9002050 61700285 v9.2.0-1967-gb69801dd6b --=20 2.46.0 From nobody Wed Mar 12 13:09:32 2025 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; arc=fail (BodyHash is different from the expected one); dmarc=pass(p=reject dis=none) header.from=lists.libvirt.org Return-Path: Received: from lists.libvirt.org (lists.libvirt.org [8.43.85.245]) by mx.zohomail.com with SMTPS id 174099069762289.19769167659354; Mon, 3 Mar 2025 00:31:37 -0800 (PST) Received: by lists.libvirt.org (Postfix, from userid 996) id E827F1369; Mon, 3 Mar 2025 03:31:36 -0500 (EST) Received: from lists.libvirt.org (localhost [IPv6:::1]) by lists.libvirt.org (Postfix) with ESMTP id A472313FA; Mon, 3 Mar 2025 03:29:00 -0500 (EST) Received: by lists.libvirt.org (Postfix, from userid 996) id 642EE1426; Fri, 28 Feb 2025 18:01:17 -0500 (EST) Received: from NAM04-MW2-obe.outbound.protection.outlook.com (mail-mw2nam04on2069.outbound.protection.outlook.com [40.107.101.69]) (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 DD2AEA52 for ; Fri, 28 Feb 2025 18:01:16 -0500 (EST) Received: from MW6PR12MB8897.namprd12.prod.outlook.com (2603:10b6:303:24a::19) by CH3PR12MB8971.namprd12.prod.outlook.com (2603:10b6:610:177::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8489.22; Fri, 28 Feb 2025 23:01:14 +0000 Received: from MW6PR12MB8897.namprd12.prod.outlook.com ([fe80::7c55:5a45:be80:e971]) by MW6PR12MB8897.namprd12.prod.outlook.com ([fe80::7c55:5a45:be80:e971%4]) with mapi id 15.20.8489.021; Fri, 28 Feb 2025 23:01:13 +0000 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on lists.libvirt.org X-Spam-Level: X-Spam-Status: No, score=-0.7 required=5.0 tests=DKIM_INVALID,DKIM_SIGNED, FORGED_SPF_HELO,MAILING_LIST_MULTI,RCVD_IN_MSPIKE_H2, RCVD_IN_VALIDITY_RPBL_BLOCKED,RCVD_IN_VALIDITY_SAFE_BLOCKED, SPF_HELO_PASS autolearn=unavailable autolearn_force=no version=3.4.4 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=OUO4Ra8+lRVlEhrUrR/KRW65kE5O5AjpuZe/kek2Xb3xe3oZWvCndqznEXowllvr4HUlKiEY+/RaJQm/3YQd0488xQ10qEzFIcpHuW/dDHNeDEXTOGaOsuCrdVQUS5E+6rrdpu1iNckLdgkmFXGBRQEcD+VpsCsSgzHsk7A+XuNAvb6LJirntS9fseQBVyVCMndyqRGpuHGEV3S+B0Dmm81Tq/O0t4lt2tZrRC0Mz3aR9OwZUHRBkVbzT0pohdlTMW+nDaTVCNVNZkiKZnfiAxUJExCTplac5X8I3iDGF1PozBw5yC5oWsn/lq18NDt+15HXhAGOZljgaAfsX5ys1w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=yx5GS/1YXFvuIqtI4AXNPFThz1OqA0+hlA9Sh/REAfM=; b=b33sqS79VH46FQ/X1d3CMas3qIhQi68pFN9UVLFKtL5dvn9QmkLiRvsgfe+RU9jSsG7t/CEWBFtnUgr5H5IdlO0Tp861E2+l+F6GY7s+ZA8v5ZrjVwF0K1/WGWb+QKJbA20a27FRQScJOKGLt6Ic9/3dop4rPcMhmpWAVmQL9aPvqhp3F+ZeessqPNvjWmMRk9dr6/IjZ+MFE9G63E9aR7avqQyI1u5Tt1/MSnuYJ2YMtbyUvH9OKAQNsnyydBaZRMzJZI66QUKWlp80btbljiCZpBblvkjuDReMuXiEhgFTwmdAVZXozDqXBUgTIRYKUJ34ErKK1eHn0vBrRql6Ug== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=yx5GS/1YXFvuIqtI4AXNPFThz1OqA0+hlA9Sh/REAfM=; b=kiaHuqvLE4Q3z6Jv6hgMVZZmv9kcIOFJ1r5etnmaSQFOy1qqaUOm8S5PcTelpvGwn2rQ7Izcl5Tadi3VaEelZ4kb23gxCeosQBAWMU1tBgAqeadbORC5mUCoCrTSbMPHEQQSbEr+kb0RS3qktrDlr/RomITawFiMOz1AO9mPZxYgO4iUbPqfoCZ3jRAEQcNBhQ7kLWMQ/JlmNAIVZJ0g82Yya7Njd3u41OMWn0xE5P+5ZNqfsRgMd5ocnhM4ZV1/O8ocQHL3DIm2FtyDahD27a5i9UYY/G2nfQBWd8ZAWV7GZkNnIiC+yohhIRqlEWZTvTJoD6Uj+rdHUHra0e5g8A== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; To: devel@lists.libvirt.org Subject: [PATCH 5/6] qemu: Add command line support for PCI high memory MMIO size Date: Fri, 28 Feb 2025 15:01:13 -0800 Message-ID: <20250228230113.3218261-1-mochs@nvidia.com> X-Mailer: git-send-email 2.46.0 In-Reply-To: <20250228225934.3213582-1-mochs@nvidia.com> References: <20250228225934.3213582-1-mochs@nvidia.com> X-NVConfidentiality: public X-ClientProxiedBy: SJ0PR05CA0031.namprd05.prod.outlook.com (2603:10b6:a03:33f::6) To MW6PR12MB8897.namprd12.prod.outlook.com (2603:10b6:303:24a::19) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MW6PR12MB8897:EE_|CH3PR12MB8971:EE_ X-MS-Office365-Filtering-Correlation-Id: 114cf756-0479-48e1-2452-08dd584bccc5 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|376014|1800799024; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?4jKOE8u+rOgIwvFKuDEFyuQwtjSzi3Q4lhX8vwMHFGkWGehSnqsmNFKjc+Aq?= =?us-ascii?Q?A9UatRLPsTFYDxBj2GEeyD8cZmfr0jACU6+xvpUuv+TAYYj2T/iU5u3GaAmH?= =?us-ascii?Q?lpLqLDGYolxSVfRkGixGQ0v2VAqhYBbX5vALyBzQZbdAQu7LDaBqmEQOHMnW?= =?us-ascii?Q?x8uTlUi0bSDazBtzMhhTDRsdqXgJwrR6iTvYRMJapib8CH7uPNK7lVjf21QE?= =?us-ascii?Q?NlmIdpyeBAsbZlU2mBWfohFiR0RyUk0elBPhXiwnvRNcyWvhagGKC0JriwQ8?= =?us-ascii?Q?7d70O23r4rgZSGpNCFNqkv1UqXuOZlN2UGzYk2wXefxlUH/htQmSeu88wAvH?= =?us-ascii?Q?GSFjJdWVGsN8yzP0xDx9DggdtICQ0pOSfilPHaAGrMMlb6opVQCUbOu7nBOR?= =?us-ascii?Q?GXrhAEN3c0jpVdVjrxPxjZL6q2yXRMXkr9Rvrg/1+TYwlCW9AyrLJxXVO8uq?= =?us-ascii?Q?A6cLdAAN3BLmc+rASRr4h8t7q73pNEG3Cv02PhBet1U232qgCA+oLc5vd/2Y?= =?us-ascii?Q?ooQz5kTm5spwiPQWTsJwwtwi66ySf6Jz2yxVxYJTFJAt8sHx/XtsDcnUc5u3?= =?us-ascii?Q?Eu/tmyo/cdlDCl6XWt1KcHcChq3dyhh/GGwAxApl+JuI16FG+/668qA4xcv8?= =?us-ascii?Q?0FqIO/eBiH2ve0dKBJTkqhCYJvD3NAk9O+qkSs0OmEfPkrwujPsitiBzpGIR?= =?us-ascii?Q?Hbm+X6TKLyIdEql6KKowCRy+8qCmM8FV9Zb4Eyb/QECYg8JjcDKzdGs0o8XW?= =?us-ascii?Q?HhNCDrPoMGoEPXkZzDsPRyXYo988KHiERbXLdFgsM4ufYp1vxI5ZvrbdmBsX?= =?us-ascii?Q?rAQWAoSafQuiJLjcc8ORbg6DLVFhawCciulbT78bnVp0NX/5p5z2NJ7guLjw?= =?us-ascii?Q?kWXEj+pfuSln6LmCF7ZDXvueGuehIZSfNZ2z5gJAsiq6haSkw3An1Cs6pDOe?= =?us-ascii?Q?A4aIDwFBjBmQPNuukExYdQ90f78Qfdywc2TGP0prMNfU/v4nxbiYoFjyPpHG?= =?us-ascii?Q?yUS5Q3iv2u0Sz8RjFPmeoYPvC26nbzb/b04FS7nWrV4zfNm/HC4kIaLsJPfJ?= =?us-ascii?Q?WPLowlZTG/U1LJ1G60pEJZrryQ2esncMpr0NvWlriA7Z904QQZN9CyOH0fl/?= =?us-ascii?Q?miDdpHTYxgOzBJWKzkWPRiNMUqRRx2QD1c9oCUst5vLk4mSO8jAM8PD5C/JZ?= =?us-ascii?Q?vpeY1SeITGUYOaT8K/KU3Qt/02ROLPhxzKL1ywTCBKYA3lo9Ln/Reiva1HtN?= =?us-ascii?Q?XgdUC143ImTvh2x6kMKQwbOF3fpjiUWZJ58SLCYqsrVoFLpJ1/K/O6hvGkrr?= =?us-ascii?Q?oB6yExs4da+468sPpfQvOH7Jzto7edGgKIyRj/+d0i/0O2HmitwjeBP1B9kI?= =?us-ascii?Q?2Vgle8UfWn8kyAnPK1W/WK+A/8RE?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MW6PR12MB8897.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(376014)(1800799024);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?p7m/9dWivCik9sM0Je9R5xbCdGggstEa/yqWOzI8LqN9RKWCNk+Je1whyPTl?= =?us-ascii?Q?E7DtF+9ulNDhJUUrOVppXB2WLNC/oqj2zP6hxzObHPDtCejhsG4zfZsttS1D?= =?us-ascii?Q?tMR2h7XAHD/GFvrcHQRUBgScWMlO676F7A136zvQUSg6+uu40FtAHNTFf7v1?= =?us-ascii?Q?dk9RDECW87752QPP+RpNnZ5GqW1WWNTsXqv6Qyk/pb2Lzs0yoa/lcxK/muAd?= =?us-ascii?Q?y5t2vp9Dsx7K6QkjtoV3C+4zUASRb90NkI3T1xCKCuTlFoQBg0M06HA8dL8d?= =?us-ascii?Q?qFmDiXmRwoo9US5xsRIczaIlR8iRiTc7Zt8/cvGz2GK67gXjFXARyTzOPTEs?= =?us-ascii?Q?jJaHAimhe94TgkIiodt/pJLVZv2MOQj45rNmdzWJ9LSI7XfWXmbS2LLs1Y92?= =?us-ascii?Q?n0s+SAYa/HlFhI6hLMdKufT/Cbj6KYXb0MdSGCzAhwesGU8kDNrMJduMXLHM?= =?us-ascii?Q?u9qtN2U7ljcDL0X/Yeu2toe6xkiB5fTZl3fuAdlCssqHjqpn8mAXtRRKHav+?= =?us-ascii?Q?cZeWR9KUXmq+xtZp6E3YlH9+w9O9rAbVPZcGpE/V+tAEeq0f5NawPavu0Jtb?= =?us-ascii?Q?t/3XKZVuEyZkcK++ddnU8MSv6bQ/Ab/RN259cJht4AxuxKsMxKsAnc3lwaC2?= =?us-ascii?Q?XYW75PL0V4jzFY/7hWETojp5nh8H50EwDT/sQOzI5ZIvvThsPsY6R0c+y6lK?= =?us-ascii?Q?2MgLnKvKIZyY1L4azpMRSEYBeHA68a4Vi6dJ6BxfUliGxqCOOxSjLK3SAEPU?= =?us-ascii?Q?LrUHfvomzb36BCkVH6qGnwG5dFvEhGPaJeg/5o77564Gd99K0pJQY3WdoKoc?= =?us-ascii?Q?u1JEl+2JARP9tb79/0P9IVuoiov9NpHKowU4ZNQy1AlPv3Pw54BPzMLHcE3H?= =?us-ascii?Q?Y2b8NA6bu7fzssoyctzVXK9pbzpi4mslx/5IHe0GH9eso2BFAqTJY1/aJ4gp?= =?us-ascii?Q?MU6dtzqhqALRF0kG63ycBaRZEo6unZIU1O7VqlaeweKwAaObjk8r9S5LXUYM?= =?us-ascii?Q?rhTTZD/YXi+zS75VhrSBnUe+XXcWQ3vKu+qJ3y2QvnkUHa3hmNBF3MX5abCq?= =?us-ascii?Q?oUaHVaMu3QaMqoIG9Ru6sCQ5OKozcEYiAlznTvmpSWSNzhVDmUX5mDjFD0us?= =?us-ascii?Q?AYhz37YKK2+v0PKhrhX5nfDqBhcY50f85rHgRwzg9L8er/7TefzHcVYDDaZ2?= =?us-ascii?Q?S3jbNNjrczY3kh2snExvP/SuQDmLHvxaH8ljIQGaxvEWwpkLhopQi629YTF+?= =?us-ascii?Q?j8mStHR8R8P9uPj5DvIFrGAE26eG1ryTh8jjQffeG5f+T3HJVTxJtJNbfoDJ?= =?us-ascii?Q?7ZwtjPRLsCAGiaeEe4Ngq1XmItjmCao5FSrJn/8oqFD0gL9aW5SLzRREXS3g?= =?us-ascii?Q?tS3njJRcexyMEAVVze0qgoaRspqqSzxkdMamCsP2ZhjA/r04LqnB4mYFw3PN?= =?us-ascii?Q?yo/lglyz0TrkSoKpFeQ89No2kx7B4uXVvgFeoHDmThFj2tC1mzCRJ442kcPt?= =?us-ascii?Q?9V8x1dA7ksA6dYWNJImQYx5qGWOU/gxNf2aa7DHp7E3XOiATeRibZRkpO6If?= =?us-ascii?Q?N1Sq/zGxf8LX3ziVqtQas0VY5MsrDBJ/1rkQbocy?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 114cf756-0479-48e1-2452-08dd584bccc5 X-MS-Exchange-CrossTenant-AuthSource: MW6PR12MB8897.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Feb 2025 23:01:13.9396 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: j+4dsXOehpvpCh8lrVyeWG+HfEoz1R43eKASqzAt5tdewSqiKnlgmaopTw90J3n+XfuTd3qwmN3nj1+Wk0zUfg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR12MB8971 Content-Transfer-Encoding: quoted-printable X-MailFrom: mochs@nvidia.com X-Mailman-Rule-Hits: nonmember-moderation 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 Message-ID-Hash: GJDPHFDJU4I4XDAIAXYPLMA3HZOJMBLH X-Message-ID-Hash: GJDPHFDJU4I4XDAIAXYPLMA3HZOJMBLH X-Mailman-Approved-At: Mon, 03 Mar 2025 08:28:44 -0500 CC: nathanc@nvidia.com 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: From: "Matthew R. Ochs via Devel" Reply-To: "Matthew R. Ochs" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1740990698496019000 Content-Type: text/plain; charset="utf-8" Add support for generating QEMU command line with PCI high memory MMIO size: - Add highmem-mmio-size to machine command line generation - Add validation for aarch64/virt machine type requirement - Add capability check for QEMU support - Add feature validation in qemu_validate.c This enables configuring the PCI high memory MMIO window size for aarch64 virt machine types. Signed-off-by: Matthew R. Ochs --- src/qemu/qemu_command.c | 6 ++++++ src/qemu/qemu_validate.c | 15 +++++++++++++++ 2 files changed, 21 insertions(+) diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c index 7370711918b6..bf29cf74530f 100644 --- a/src/qemu/qemu_command.c +++ b/src/qemu/qemu_command.c @@ -6773,6 +6773,12 @@ qemuAppendDomainFeaturesMachineParam(virBuffer *buf, virBufferAsprintf(buf, ",aia=3D%s", str); } =20 + if (def->features[VIR_DOMAIN_FEATURE_PCI] =3D=3D VIR_TRISTATE_SWITCH_O= N) { + if (def->pci && def->pci->highmemMMIOSize > 0) { + virBufferAsprintf(buf, ",highmem-mmio-size=3D%lluG", + def->pci->highmemMMIOSize / (1024 * 1024 * 1= 024)); + } + } return 0; } =20 diff --git a/src/qemu/qemu_validate.c b/src/qemu/qemu_validate.c index 76f2eafe4955..9476dee49451 100644 --- a/src/qemu/qemu_validate.c +++ b/src/qemu/qemu_validate.c @@ -279,6 +279,21 @@ qemuValidateDomainDefFeatures(const virDomainDef *def, } break; =20 + case VIR_DOMAIN_FEATURE_PCI: + if (def->features[i] !=3D VIR_TRISTATE_SWITCH_ABSENT && + !qemuDomainIsARMVirt(def)) { + virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", + _("features/pci is only supported with aarch= 64 virt machines")); + return -1; + } + if (def->features[i] !=3D VIR_TRISTATE_SWITCH_ABSENT && + !virQEMUCapsGet(qemuCaps, QEMU_CAPS_MACHINE_VIRT_HIGHMEM_M= MIO_SIZE)) { + virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", + _("features/pci is not supported with this Q= EMU binary")); + return -1; + } + break; + case VIR_DOMAIN_FEATURE_SMM: case VIR_DOMAIN_FEATURE_KVM: case VIR_DOMAIN_FEATURE_XEN: --=20 2.46.0 From nobody Wed Mar 12 13:09:32 2025 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; arc=fail (BodyHash is different from the expected one); dmarc=pass(p=reject dis=none) header.from=lists.libvirt.org Return-Path: Received: from lists.libvirt.org (lists.libvirt.org [8.43.85.245]) by mx.zohomail.com with SMTPS id 1740990722230268.41024146873406; Mon, 3 Mar 2025 00:32:02 -0800 (PST) Received: by lists.libvirt.org (Postfix, from userid 996) id 868211216; Mon, 3 Mar 2025 03:32:01 -0500 (EST) Received: from lists.libvirt.org (localhost [IPv6:::1]) by lists.libvirt.org (Postfix) with ESMTP id 69D891397; Mon, 3 Mar 2025 03:29:02 -0500 (EST) Received: by lists.libvirt.org (Postfix, from userid 996) id 2F0BBA52; Fri, 28 Feb 2025 18:01:27 -0500 (EST) Received: from NAM04-BN8-obe.outbound.protection.outlook.com (mail-bn8nam04on2083.outbound.protection.outlook.com [40.107.100.83]) (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 28EAB13C9 for ; Fri, 28 Feb 2025 18:01:26 -0500 (EST) Received: from MW6PR12MB8897.namprd12.prod.outlook.com (2603:10b6:303:24a::19) by CH3PR12MB8971.namprd12.prod.outlook.com (2603:10b6:610:177::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8489.22; Fri, 28 Feb 2025 23:01:22 +0000 Received: from MW6PR12MB8897.namprd12.prod.outlook.com ([fe80::7c55:5a45:be80:e971]) by MW6PR12MB8897.namprd12.prod.outlook.com ([fe80::7c55:5a45:be80:e971%4]) with mapi id 15.20.8489.021; Fri, 28 Feb 2025 23:01:22 +0000 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on lists.libvirt.org X-Spam-Level: X-Spam-Status: No, score=-0.7 required=5.0 tests=DKIM_INVALID,DKIM_SIGNED, FORGED_SPF_HELO,MAILING_LIST_MULTI,RCVD_IN_MSPIKE_H2, RCVD_IN_VALIDITY_RPBL_BLOCKED,RCVD_IN_VALIDITY_SAFE_BLOCKED, SPF_HELO_PASS autolearn=unavailable autolearn_force=no version=3.4.4 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=beItZ+7ugKH4595f7LrKrGljSghPzak4gkDjM8uwWsG20snQ1yUrKZMYtl0Yw3Db3dXgRmKPd+4BROJnWbapDt7LRwBokVFk5zkW0NgfOT2zTK8abnWQS3LRRapdMG4k0IHCIM/LLSmwkEnEovVRf1swq4jlGfy3JK1Y+4aioHvxLCXpWqN2x7ozu7hUl5ygjnbt7fH1DfDIJjNHwAD56IFQbXRNTf4q5SKczaR0YgFr6hKim7jdXti6buSIZTnzd/3EMSAerMiVeamZ/kZq2UER3WsQKqWAU9QvqLPxw0HGwbbAGwXYmzgJkFJ1rEp3PkkyUzwnTjLvdnDGAa2zlA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=6+Ym5nsTotviv/YIBhJ/RzuRJ7rP+Gq6G3w7r6Apf80=; b=wqu71tq8WcjGePfqGkaJNseJEYD7k9Hssd+EStHuUbrR5ps+kb5ehI1+E/afjiTVD9duE07OhHqWf2dipimgN2KRg0aPTPTsnK8+Qy9DiNHcLA4Gb7vKREvv7k5+YYfWQrg3vO4EtGHPa7IP3qlzoD+axfhTsaiSKGBfM80sjuTdPjRztkC0wRIC2dQSpBeai2f1/hguOKiq8obywe+S7BiBlHVR/feiMT2Hyno3eKJzE49Ee+edN1hEKBLGtwHvZQzYvCvGg1/MfHrb42QwdWU8OQze1CiVC5s4ty5y/nLIH1F4mvYbVhWpKQxGwGQ2Ww8C8MsXG8hbqp4cr5vm5Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=6+Ym5nsTotviv/YIBhJ/RzuRJ7rP+Gq6G3w7r6Apf80=; b=N3jvRhFWEWqdBV3Xz82p89k18oVfIOMW15I2DXaaFsIz6gHvcdIkUM7e+Lli0nKFn4w7+cIxDb+juMZUgKwosPgruD3tUgwsDv9kWeQ91dWL5CajmmVf4tlCVBJdfZyrc7geCClypLfByZrXUInpbIciF8/fwxXCA1ntZL4z3zIlY7JMIlfqvk+5x5F4Cvzv9dT1jFgPWb7VTLkKejphj/4y2Hl35Lc/aPY1WZn+3qfx04TB2o7qFYPdwRfL23gzs4G05Q0x0jtTjLCbVRd+iCdXy+Ph1lmBt5HxqGWZAoc0XtUiRI+aSG267Dnqm7MLpVoQrUVYVALts3dm8AZh7g== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; To: devel@lists.libvirt.org Subject: [PATCH 6/6] tests: Add tests for machine PCI features Date: Fri, 28 Feb 2025 15:01:21 -0800 Message-ID: <20250228230121.3218519-1-mochs@nvidia.com> X-Mailer: git-send-email 2.46.0 In-Reply-To: <20250228225934.3213582-1-mochs@nvidia.com> References: <20250228225934.3213582-1-mochs@nvidia.com> X-NVConfidentiality: public X-ClientProxiedBy: SJ0PR05CA0058.namprd05.prod.outlook.com (2603:10b6:a03:33f::33) To MW6PR12MB8897.namprd12.prod.outlook.com (2603:10b6:303:24a::19) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MW6PR12MB8897:EE_|CH3PR12MB8971:EE_ X-MS-Office365-Filtering-Correlation-Id: 6c1a15a4-40df-4b3b-c3e1-08dd584bd208 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|376014|1800799024; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?WMK0Jpd2NSqPRr9lQanC15FcghEvvBBbDz1oz6ko5MZ7cjPPI6gg+u2nkV85?= =?us-ascii?Q?bWfzT9jUUADUEhqeHmTJRxTGJVgJJ4sew22MW5n76LzftAjDcYSCFooX01Pf?= =?us-ascii?Q?/3FhUu2DUQJAWLg3j4d8KW06EuHIYxOiVZbuG29eQJmANX5f85WyAWzYpi2N?= =?us-ascii?Q?2Ppd8v6O43s8pvXANujJjLSvF1hTMWBgOosAU+rRGqRUEAPMu1Q2bhOcCUX5?= =?us-ascii?Q?O3UJIYhJOsbY2+hI0GjJlf0rdxPAJ1tHj182Y5hwEgsum4tqw99WSPesCJE+?= =?us-ascii?Q?ysMibTvyrHBTuILi6BMJ9++qV0jhHXvwAgfN3scSDOLLVZhoIu8cNgKOGt6Y?= =?us-ascii?Q?W3Sroa8L1/2Dvl4KvpzIs4JR4ktnjxtYKf9taKOQr45q6pXoM7stTq6GQ9+2?= =?us-ascii?Q?wN5SeIifUVRmKnWjARqnmS7/kHftj/Pq34M6MY0P5JEFUmWEBUcZ2moVzFZy?= =?us-ascii?Q?cwCJDsRpH4QiZaY4GF0+fRXLdKdmZrbfFIrQ7pCD/ovgdGXeh13uh0celyKC?= =?us-ascii?Q?CyjCAnDEgFVMXg6glXaExVNuBT2Ww+aNcJYRmxJvbnF+BQpwVwZkxzQDjLPd?= =?us-ascii?Q?5CDz9PF6nCT60ZfjOwWWHvzbzplDqdfHQfx+c8a1cAQbLo0ox3mBHoqFruGP?= =?us-ascii?Q?XbMQ08d4Z1RkqsHjOhi/D39xrqG0EGwR0f83v+JBt9U+q+cRI/9s2aFtSDwG?= =?us-ascii?Q?Rw5jStiBj5so/7sg8ifUoAfJz8vgNlm8twjHul2dFDc/cPoGkLOL9ZUHpfx/?= =?us-ascii?Q?cEAKC+pOJtSWrQmAys5ZQfqLZqjOhOyy5dT0wkBqEtRL6GL5nG061Zr7IJOM?= =?us-ascii?Q?fD1PRJGT1GbC9BX/eUqVsWeyBq6KOdSwc1YzPai55NSUO5P8/xKDvmETbKaH?= =?us-ascii?Q?rxnqZSH9/Fmbc9RoGm1JaHruHNrNHCfsCiHRfB6ihK6aZx3S0kyDFO9aEliM?= =?us-ascii?Q?tRmFezTIb9DqAY+Vt0j/qTUKPK2lfwesT8aT5k57OqS8vAvBqcW0dClV18B5?= =?us-ascii?Q?inHW6Rg2dCSQ9qV+blCvjNg5wCkv4Tx5oI4lclaTWURUptcUpyzU1en1Sv3t?= =?us-ascii?Q?iuBbkUgQBaUAC0OQTaAsSH3INyCXNjfepFbnb6ZgFHJHGxsbkWjWfcmh+AwN?= =?us-ascii?Q?Hvm5GScqNlgBOGdcsyIkjbgSK1PnJw9zThUa3RE6Sro9XZSf9GJSXF/U4RIi?= =?us-ascii?Q?tXeGzv4tRDeMpZAwnK1ZHQNNleg/NGsRJJJmApGKejk6aAhimURzjZeNIHmv?= =?us-ascii?Q?3H9RAq8bH16rztas5Rl5RZ9EBF3UsG9MyjhQKFVhJfQz8SB29xhPLo7i0+dS?= =?us-ascii?Q?alN6Bs2Pphu2+krFLWYPCPU0pBWrYeRQZ2PqcGW95mKcFsKrn9Q1XTYArM0k?= =?us-ascii?Q?Ck7UU3L+imLVnJ5GpxACDjxF2hk5?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MW6PR12MB8897.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(376014)(1800799024);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?upVIXque2yzLZ86bgF950NEHv5/VsfRE/u5KAlWv4X9pafD4PpJSFcwxG/6h?= =?us-ascii?Q?ZRofuqKUF7ZbTGDniBuGfijQeiIZ/6Ou6ZQBg/JiLKrAoN+E4FrolP0r77o/?= =?us-ascii?Q?YN/Gsv+T5ZznIOEWFifreGApzS1XkqMBy75EuUsvJyJYSkJ+VYZ2UIyprCLZ?= =?us-ascii?Q?jhWnf+dVnwyz1ryZpZ2B4ugHk0HNw0nDPdmUSo4Qkfrgv7+zh+NZYAc9SAkv?= =?us-ascii?Q?HvoXM881sOA/YMy7yqxGCKQqmCCo3AvIKO0nRR+zOIHP2WRtCWMkcsMO65Eu?= =?us-ascii?Q?6oU5o7wZ2vS4uVFN7EvCUlus9gI9gn10rmVdUPIFl/Ax3SO29ElmnpSD1Y7x?= =?us-ascii?Q?y+q7IqOBp008pElsCqoo0Ccc/TLrKyZWRxPlA4gQBxz++uqQyoTZ3+4jNtIE?= =?us-ascii?Q?zLX57RA+ygpseeCb14orT35DGHzK81OE9hdG+y0iNoZVYV2a7gW5/zDiYiJ4?= =?us-ascii?Q?WLnFvUZ7m2hPRsJrUrRdjipYcmY6SntFjG8oaIgGx3uk3gadwNzZ7+fdlC9f?= =?us-ascii?Q?wnErpya55OuI74nxET8V5tSJFVvzotGVjmuSWMJ55s5SAWc59XRJ0wckzCIA?= =?us-ascii?Q?Gz9wuhmq7TmAXhlRNqk2z4Ltb69ISJXy5Af1mHmxLyWePqEGqIS12/yTh/AZ?= =?us-ascii?Q?pH10j6MHnM+4zZmI9AikJSML3FZFAxpIugvGxEYZDYz5XSc+RqtsyLH6sKKJ?= =?us-ascii?Q?tf2OVUs8F3tlueOxTPkmZAzXjn9FqEYknmR7v5T0jaJoVAhlkanmuR7aQ1aE?= =?us-ascii?Q?7RujBF39vBcxLsMkCUeUUHS0cRBoxKd9ol60GA/fCadvWX+V5nttacxy1yos?= =?us-ascii?Q?z2lbjqVEjFai8+6OSUVEtWiAflQTI+9FAb4J8Xzd/wwaAXXYCHhSXl7XEd+R?= =?us-ascii?Q?K2wKuwtOY2SPnrBO15QA/rYPRHY+J1V65fOZTAtY8LrN3GhG+Z/NjLY7VOCh?= =?us-ascii?Q?ZepnEUsarptONIn6KumzyIy1p9BHYl9m3NSTLothjJn7+kqiVLkINMiN7K30?= =?us-ascii?Q?qQTG6U0vQyvPKrmHe0o8UbYbwzLrMwcvoXmGn+vY2T+68ddVL8lZkideM5MM?= =?us-ascii?Q?OwsYxgQldzXEf69q0nnZjuLw6FV55LU/oFyjN/yurY8onQDR29iMsx/OqG+Z?= =?us-ascii?Q?Rpbr2gRN+SYebZZOQ89reAThAImfTvH+VL3Bz/NHvXB6YPFkszdNNEjg9bi0?= =?us-ascii?Q?rWbbP8q8onnBsMFwTYdIt2oqwUgdAXa3oCK6UMcZU1igr3gMqAiqsWbtkjob?= =?us-ascii?Q?1QzKRMX1YYW06ewx5euF/a/f7ohufaKrGxakCdd0Ec71HWDkY/qK3GEdJoZD?= =?us-ascii?Q?vVKFWyupK+vvquTE+arnC3TG6CFEXsJ3RCsmLKuGm9PpFyfJwFGarkRTxIZl?= =?us-ascii?Q?aOIjZOP314NP60VzE7+Fo02bI9x/TZ4pp/BeSvtcJuWAfonfuyyV8pb8SMq7?= =?us-ascii?Q?4iCRt7q864RYd4Xe0KXkBiserNDMkNkIs0PAXS/VY6moQKwQBC/XrWix6/4Y?= =?us-ascii?Q?OtvwzBYOR83gUK2hIJgaYNK2Z9UnN22BtBSAkFBdToUd9/jmeiFvaAVQ82/j?= =?us-ascii?Q?wOKir4DoZrczcktBSGtgGe0YA1xx0ImRliY1hDho?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6c1a15a4-40df-4b3b-c3e1-08dd584bd208 X-MS-Exchange-CrossTenant-AuthSource: MW6PR12MB8897.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Feb 2025 23:01:22.7670 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: JFe55fcHAGHQpV360DC9hXdkZ/1T+T+Ft1dxe2dUBmhi5es62ClEm4E82ReIPaGmWjZ/Xu5PTtASS438oT6C6A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR12MB8971 Content-Transfer-Encoding: quoted-printable X-MailFrom: mochs@nvidia.com X-Mailman-Rule-Hits: nonmember-moderation 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 Message-ID-Hash: L2HATVHRXY2QZ6V7RQW67EU7NSBUGORC X-Message-ID-Hash: L2HATVHRXY2QZ6V7RQW67EU7NSBUGORC X-Mailman-Approved-At: Mon, 03 Mar 2025 08:28:44 -0500 CC: nathanc@nvidia.com 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: From: "Matthew R. Ochs via Devel" Reply-To: "Matthew R. Ochs" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1740990722697019000 Content-Type: text/plain; charset="utf-8" Add test coverage for machine-specific PCI features: - Add XML tests for aarch64 virt highmem-mmio-size - Add command line generation tests This ensures proper handling of machine-specific PCI features like the high memory MMIO window size configuration. Signed-off-by: Matthew R. Ochs --- ...rch64-virt-machine-pci.aarch64-latest.args | 31 +++++++++++++++++++ ...arch64-virt-machine-pci.aarch64-latest.xml | 30 ++++++++++++++++++ .../aarch64-virt-machine-pci.xml | 20 ++++++++++++ tests/qemuxmlconftest.c | 2 ++ 4 files changed, 83 insertions(+) create mode 100644 tests/qemuxmlconfdata/aarch64-virt-machine-pci.aarch64-= latest.args create mode 100644 tests/qemuxmlconfdata/aarch64-virt-machine-pci.aarch64-= latest.xml create mode 100644 tests/qemuxmlconfdata/aarch64-virt-machine-pci.xml diff --git a/tests/qemuxmlconfdata/aarch64-virt-machine-pci.aarch64-latest.= args b/tests/qemuxmlconfdata/aarch64-virt-machine-pci.aarch64-latest.args new file mode 100644 index 000000000000..7ab4e8bd624f --- /dev/null +++ b/tests/qemuxmlconfdata/aarch64-virt-machine-pci.aarch64-latest.args @@ -0,0 +1,31 @@ +LC_ALL=3DC \ +PATH=3D/bin \ +HOME=3D/var/lib/libvirt/qemu/domain--1-aarch64-virt-machine \ +USER=3Dtest \ +LOGNAME=3Dtest \ +XDG_DATA_HOME=3D/var/lib/libvirt/qemu/domain--1-aarch64-virt-machine/.loca= l/share \ +XDG_CACHE_HOME=3D/var/lib/libvirt/qemu/domain--1-aarch64-virt-machine/.cac= he \ +XDG_CONFIG_HOME=3D/var/lib/libvirt/qemu/domain--1-aarch64-virt-machine/.co= nfig \ +/usr/bin/qemu-system-aarch64 \ +-name guest=3Daarch64-virt-machine-pci,debug-threads=3Don \ +-S \ +-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/va= r/lib/libvirt/qemu/domain--1-aarch64-virt-machine/master-key.aes"}' \ +-machine virt,usb=3Doff,gic-version=3D2,highmem-mmio-size=3D512G,dump-gues= t-core=3Doff,memory-backend=3Dmach-virt.ram,acpi=3Doff \ +-accel tcg \ +-cpu cortex-a15 \ +-m size=3D1048576k \ +-object '{"qom-type":"memory-backend-ram","id":"mach-virt.ram","size":1073= 741824}' \ +-overcommit mem-lock=3Doff \ +-smp 1,sockets=3D1,cores=3D1,threads=3D1 \ +-uuid 6ba7b810-9dad-11d1-80b4-00c04fd430c8 \ +-display none \ +-no-user-config \ +-nodefaults \ +-chardev socket,id=3Dcharmonitor,fd=3D1729,server=3Don,wait=3Doff \ +-mon chardev=3Dcharmonitor,id=3Dmonitor,mode=3Dcontrol \ +-rtc base=3Dutc \ +-no-shutdown \ +-boot strict=3Don \ +-audiodev '{"id":"audio1","driver":"none"}' \ +-sandbox on,obsolete=3Ddeny,elevateprivileges=3Ddeny,spawn=3Ddeny,resource= control=3Ddeny \ +-msg timestamp=3Don diff --git a/tests/qemuxmlconfdata/aarch64-virt-machine-pci.aarch64-latest.= xml b/tests/qemuxmlconfdata/aarch64-virt-machine-pci.aarch64-latest.xml new file mode 100644 index 000000000000..d19a23b17b70 --- /dev/null +++ b/tests/qemuxmlconfdata/aarch64-virt-machine-pci.aarch64-latest.xml @@ -0,0 +1,30 @@ + + aarch64-virt-machine-pci + 6ba7b810-9dad-11d1-80b4-00c04fd430c8 + 1048576 + 1048576 + 1 + + hvm + + + + + + 512 + + + + cortex-a15 + + + destroy + restart + destroy + + /usr/bin/qemu-system-aarch64 + + + diff --git a/tests/qemuxmlconfdata/aarch64-virt-machine-pci.xml b/tests/qem= uxmlconfdata/aarch64-virt-machine-pci.xml new file mode 100644 index 000000000000..42ebb4b304b5 --- /dev/null +++ b/tests/qemuxmlconfdata/aarch64-virt-machine-pci.xml @@ -0,0 +1,20 @@ + + aarch64-virt-machine-pci + 6ba7b810-9dad-11d1-80b4-00c04fd430c8 + 1048576 + 1048576 + 1 + + hvm + + + + 512 + + + + /usr/bin/qemu-system-aarch64 + + + + diff --git a/tests/qemuxmlconftest.c b/tests/qemuxmlconftest.c index 1279b08c9627..5f1f6a7bb3c5 100644 --- a/tests/qemuxmlconftest.c +++ b/tests/qemuxmlconftest.c @@ -2665,6 +2665,8 @@ mymain(void) =20 DO_TEST_CAPS_ARCH_LATEST("clock-timer-armvtimer", "aarch64"); =20 + DO_TEST_CAPS_ARCH_LATEST("aarch64-virt-machine-pci", "aarch64"); + qemuTestSetHostArch(&driver, VIR_ARCH_NONE); =20 DO_TEST_CAPS_LATEST("kvm-pit-delay"); --=20 2.46.0