From nobody Fri Dec 12 14:09:14 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; dmarc=pass(p=reject dis=none) header.from=lists.libvirt.org ARC-Seal: i=1; a=rsa-sha256; t=1761724598; cv=none; d=zohomail.com; s=zohoarc; b=Wg7U2ObB+g9JiBIAaTl0dSlwLEvc190JvXbi/tQTnn6CGr4Qv3LlC6DyLtuxavHSIuTqHSN6/8woZz9ceu2kMn2YJa+l0npeV7GS1MuWXDtVVcIZ+q+BmFRapBnl73dvUOcQN8FPVWcqhf2oVwe3W0IqlahyBDUDVSy6dSriElI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1761724598; h=Content-Type:Content-Transfer-Encoding:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Owner:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:Reply-To:References:Subject:Subject:To:To:Message-Id:Cc; bh=90HCc4GFpWA+YUXu6UiQK2EAojiDAzdnCTMnX3h1q2A=; b=VmvPfD6FSPKM2PfFfGMKzGh9InDRjvdpZC153Zo7BmYKepuDNbeF3e0aqazW54PjpTf30teCo3nmClhyhuD5mO15DHc6RdZipRnss4osUhjFyBdCWQ/rk6IjLFARg+dweqslheD0E3LaAMspdTwK3cs7Kz3m/eE2G0XES74ZFBU= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of lists.libvirt.org designates 8.43.85.245 as permitted sender) smtp.mailfrom=devel-bounces@lists.libvirt.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.libvirt.org (lists.libvirt.org [8.43.85.245]) by mx.zohomail.com with SMTPS id 176172459822487.16078895886358; Wed, 29 Oct 2025 00:56:38 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 972623FA68; Wed, 29 Oct 2025 03:56:35 -0400 (EDT) Received: from [172.19.199.29] (lists.libvirt.org [8.43.85.245]) by lists.libvirt.org (Postfix) with ESMTP id D793C41912; Wed, 29 Oct 2025 03:55:19 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 9E07341851; Wed, 29 Oct 2025 03:53:23 -0400 (EDT) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (3072 bits) server-digest SHA256) (No client certificate requested) by lists.libvirt.org (Postfix) with ESMTPS id 7CBBE41850 for ; Wed, 29 Oct 2025 03:53:21 -0400 (EDT) Received: from mx-prod-mc-06.mail-002.prod.us-west-2.aws.redhat.com (ec2-35-165-154-97.us-west-2.compute.amazonaws.com [35.165.154.97]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-323-gmIf_6CyM1msZkKpZ1IrEw-1; Wed, 29 Oct 2025 03:53:19 -0400 Received: from mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.111]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-06.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id 5624E1800654 for ; Wed, 29 Oct 2025 07:53:18 +0000 (UTC) Received: from moe (unknown [10.43.3.236]) by mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id A32231800452 for ; Wed, 29 Oct 2025 07:53:17 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-26) on lists.libvirt.org X-Spam-Level: X-Spam-Status: No, score=-5.0 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED,RCVD_IN_VALIDITY_RPBL_BLOCKED, RCVD_IN_VALIDITY_SAFE_BLOCKED,SPF_PASS autolearn=unavailable autolearn_force=no version=4.0.1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1761724400; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=90HCc4GFpWA+YUXu6UiQK2EAojiDAzdnCTMnX3h1q2A=; b=AGLPStrz5kgUFMLYQeFfSig+z7SKGkTOBqqhxrPP/uauEsvGsxigF7Rnx4ULJN29Oes/kM 4erRJQteiBiZUSxcleS47+FlcFKKuQzNlP+lFppYnW2+jvZOErdEsXD01Kg00iUnrXFcW2 AOC57KH3F/7+IpqF5iQNP9HgkH4k2jU= X-MC-Unique: gmIf_6CyM1msZkKpZ1IrEw-1 X-Mimecast-MFC-AGG-ID: gmIf_6CyM1msZkKpZ1IrEw_1761724398 To: devel@lists.libvirt.org Subject: [PATCH 1/7] domain_conf: Make virDomainMemoryDefFormat() return void Date: Wed, 29 Oct 2025 08:53:01 +0100 Message-ID: <4ab2a73c057ca70e39840cdedc83b2c3459801f8.1761724370.git.mprivozn@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.4.1 on 10.30.177.111 X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: qeM88Ig7FnL8CsbkqPY10urABoNOrGAbaa_g8sgyc3o_1761724398 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Message-ID-Hash: W5XFHMFWQRGHI7S6AU6ZGLKC2I6DFVRE X-Message-ID-Hash: W5XFHMFWQRGHI7S6AU6ZGLKC2I6DFVRE X-MailFrom: mprivozn@redhat.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; header-match-devel.lists.libvirt.org-0; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header X-Mailman-Version: 3.3.10 Precedence: list List-Id: Development discussions about the libvirt library & tools Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: From: Michal Privoznik via Devel Reply-To: Michal Privoznik X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1761724601684154100 Content-Type: text/plain; charset="utf-8"; x-default="true" From: Michal Privoznik The only thing that's possibly making virDomainMemoryDefFormat() fail is call to virDomainMemorySourceDefFormat() but that always returns zero. Make both functions return void so callers are not confused. Signed-off-by: Michal Privoznik Reviewed-by: Jiri Denemark --- src/conf/domain_conf.c | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 0223fc1d88..0a647a1b44 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -26472,7 +26472,7 @@ virDomainCryptoDefFree(virDomainCryptoDef *def) } =20 =20 -static int +static void virDomainMemorySourceDefFormat(virBuffer *buf, virDomainMemoryDef *def) { @@ -26532,8 +26532,6 @@ virDomainMemorySourceDefFormat(virBuffer *buf, } =20 virXMLFormatElement(buf, "source", NULL, &childBuf); - - return 0; } =20 =20 @@ -26600,7 +26598,7 @@ virDomainMemoryTargetDefFormat(virBuffer *buf, virXMLFormatElement(buf, "target", &attrBuf, &childBuf); } =20 -static int +static void virDomainMemoryDefFormat(virBuffer *buf, virDomainMemoryDef *def, unsigned int flags) @@ -26625,8 +26623,7 @@ virDomainMemoryDefFormat(virBuffer *buf, virBufferAsprintf(buf, "%s\n", uuidstr); } =20 - if (virDomainMemorySourceDefFormat(buf, def) < 0) - return -1; + virDomainMemorySourceDefFormat(buf, def); =20 virDomainMemoryTargetDefFormat(buf, def, flags); =20 @@ -26634,7 +26631,6 @@ virDomainMemoryDefFormat(virBuffer *buf, =20 virBufferAdjustIndent(buf, -2); virBufferAddLit(buf, "\n"); - return 0; } =20 static void @@ -29462,8 +29458,7 @@ virDomainDefFormatInternalSetRootName(virDomainDef = *def, virDomainShmemDefFormat(buf, def->shmems[n], flags); =20 for (n =3D 0; n < def->nmems; n++) { - if (virDomainMemoryDefFormat(buf, def->mems[n], flags) < 0) - return -1; + virDomainMemoryDefFormat(buf, def->mems[n], flags); } =20 for (n =3D 0; n < def->ncryptos; n++) { --=20 2.51.0 From nobody Fri Dec 12 14:09:14 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; dmarc=pass(p=reject dis=none) header.from=lists.libvirt.org ARC-Seal: i=1; a=rsa-sha256; t=1761724655; cv=none; d=zohomail.com; s=zohoarc; b=HM//GR0yY8GGvu+jreQQBg6n/DaFAHuD+mYsGKKO5naFuJIuW5ghZvXWc+Vmp1dDT3RpcL+nMPJi/RyFtuAoqvUggli2Zqwmx+crGyuIZNpg8O4wgWaKOjE1KNqsMAnJDMZkAuVntE5zYQx4pJ19+HJVyJrkISVagslgbiD06hU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1761724655; h=Content-Type:Content-Transfer-Encoding:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Owner:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:Reply-To:References:Subject:Subject:To:To:Message-Id:Cc; bh=w+m++DuY9mU1yeer6OQKQB1pQcSx7yYEdY8hIZnL1Ik=; b=F0spcYBNFCd2uEqJEcT4TNeuPVBlmHxvgcQJvq0SMLBneYNAFdWz0IcFakGGlhWayqzYOjLRV35F84Zbo0DSU0RbhM5sGyA68SdOuf8TmmBPzn9WwNqQnrp0qfFJsZyg2jmHwdxoazOYUL4NyMvubHZBwXgUQ0HT0VQPFQkbNqw= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of lists.libvirt.org designates 8.43.85.245 as permitted sender) smtp.mailfrom=devel-bounces@lists.libvirt.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.libvirt.org (lists.libvirt.org [8.43.85.245]) by mx.zohomail.com with SMTPS id 1761724655871715.3082931655096; Wed, 29 Oct 2025 00:57:35 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 993) id C462F3F838; Wed, 29 Oct 2025 03:57:30 -0400 (EDT) Received: from [172.19.199.29] (lists.libvirt.org [8.43.85.245]) by lists.libvirt.org (Postfix) with ESMTP id E2BA741A37; Wed, 29 Oct 2025 03:56:02 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 011C84184F; Wed, 29 Oct 2025 03:53:23 -0400 (EDT) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (3072 bits) server-digest SHA256) (No client certificate requested) by lists.libvirt.org (Postfix) with ESMTPS id 22AE54186B for ; Wed, 29 Oct 2025 03:53:22 -0400 (EDT) Received: from mx-prod-mc-01.mail-002.prod.us-west-2.aws.redhat.com (ec2-54-186-198-63.us-west-2.compute.amazonaws.com [54.186.198.63]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-607-TuorLAK5NsWAsG8xg3WNxw-1; Wed, 29 Oct 2025 03:53:20 -0400 Received: from mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.111]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-01.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id 7E417196F747 for ; Wed, 29 Oct 2025 07:53:19 +0000 (UTC) Received: from moe (unknown [10.43.3.236]) by mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id C8B451800452 for ; Wed, 29 Oct 2025 07:53:18 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-26) on lists.libvirt.org X-Spam-Level: X-Spam-Status: No, score=-5.0 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED,RCVD_IN_VALIDITY_RPBL_BLOCKED, RCVD_IN_VALIDITY_SAFE_BLOCKED,SPF_PASS autolearn=unavailable autolearn_force=no version=4.0.1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1761724401; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=w+m++DuY9mU1yeer6OQKQB1pQcSx7yYEdY8hIZnL1Ik=; b=cZRefC8OLGcF+SpQPDNrAnVYsD3d3LB7kQxwbee2P/aV0kZ0Dy3W7k7B+S9iG+8Sfn6t3A Z97FeGVaC53B6IiKpSzTRgagSe2rLvvm3DA/tSCOe48RMi3zLkr3ufJDL5haa5Q5S5m3eY +yTT0bJOGSHe4UlpDDfli/mu+f73eos= X-MC-Unique: TuorLAK5NsWAsG8xg3WNxw-1 X-Mimecast-MFC-AGG-ID: TuorLAK5NsWAsG8xg3WNxw_1761724399 To: devel@lists.libvirt.org Subject: [PATCH 2/7] domain_cof: Switch to virXMLFormatElement() in virDomainMemoryDefFormat() Date: Wed, 29 Oct 2025 08:53:02 +0100 Message-ID: <453b9b320246568db86d72be9e561a3c0551463e.1761724370.git.mprivozn@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.4.1 on 10.30.177.111 X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: uDyUC9HnqXXmYKTSgosW2ZA3XjbgHMMIJiKK3x7duoA_1761724399 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Message-ID-Hash: K4SVCHCHOUJW3RJXMNQ4GDIWIZ6SXBGX X-Message-ID-Hash: K4SVCHCHOUJW3RJXMNQ4GDIWIZ6SXBGX X-MailFrom: mprivozn@redhat.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; header-match-devel.lists.libvirt.org-0; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header X-Mailman-Version: 3.3.10 Precedence: list List-Id: Development discussions about the libvirt library & tools Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: From: Michal Privoznik via Devel Reply-To: Michal Privoznik X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1761724657481158500 Content-Type: text/plain; charset="utf-8"; x-default="true" From: Michal Privoznik SSIA Signed-off-by: Michal Privoznik Reviewed-by: Jiri Denemark --- src/conf/domain_conf.c | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 0a647a1b44..0d32bcad47 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -26604,33 +26604,32 @@ virDomainMemoryDefFormat(virBuffer *buf, unsigned int flags) { const char *model =3D virDomainMemoryModelTypeToString(def->model); + g_auto(virBuffer) attrBuf =3D VIR_BUFFER_INITIALIZER; + g_auto(virBuffer) childBuf =3D VIR_BUFFER_INIT_CHILD(buf); =20 - virBufferAsprintf(buf, "access) - virBufferAsprintf(buf, " access=3D'%s'", + virBufferAsprintf(&attrBuf, " access=3D'%s'", virDomainMemoryAccessTypeToString(def->access)); if (def->discard) - virBufferAsprintf(buf, " discard=3D'%s'", + virBufferAsprintf(&attrBuf, " discard=3D'%s'", virTristateBoolTypeToString(def->discard)); - virBufferAddLit(buf, ">\n"); - virBufferAdjustIndent(buf, 2); =20 if (def->model =3D=3D VIR_DOMAIN_MEMORY_MODEL_NVDIMM && def->target.nvdimm.uuid) { char uuidstr[VIR_UUID_STRING_BUFLEN]; =20 virUUIDFormat(def->target.nvdimm.uuid, uuidstr); - virBufferAsprintf(buf, "%s\n", uuidstr); + virBufferAsprintf(&childBuf, "%s\n", uuidstr); } =20 - virDomainMemorySourceDefFormat(buf, def); + virDomainMemorySourceDefFormat(&childBuf, def); =20 - virDomainMemoryTargetDefFormat(buf, def, flags); + virDomainMemoryTargetDefFormat(&childBuf, def, flags); =20 - virDomainDeviceInfoFormat(buf, &def->info, flags); + virDomainDeviceInfoFormat(&childBuf, &def->info, flags); =20 - virBufferAdjustIndent(buf, -2); - virBufferAddLit(buf, "\n"); + virXMLFormatElement(buf, "memory", &attrBuf, &childBuf); } =20 static void --=20 2.51.0 From nobody Fri Dec 12 14:09:14 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; dmarc=pass(p=reject dis=none) header.from=lists.libvirt.org ARC-Seal: i=1; a=rsa-sha256; t=1761724695; cv=none; d=zohomail.com; s=zohoarc; b=DKaz3iT2IS0sWOAm9Btvt9tgFQI5RSHEucAGeFed08pZkEqCSastkHukx4JJzu7qVUMgmqlTzYsq9RI2AiESioVcpHhIraA8aGpgNWnPYNQKratFNbj1EatYRVDtMNCGViidqbcuqGB9LNEquvp4ixgNHPWPd1SxU5Pq4BD0+t0= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1761724695; h=Content-Type:Content-Transfer-Encoding:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Owner:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:Reply-To:References:Subject:Subject:To:To:Message-Id:Cc; bh=2N/5iDg3E9UyIbovczrxPVF86MmWLoiFj3PXvJrpXiI=; b=XugzSTok1VK7aZ7P37nCxY/BuLqV5hJwPrHCYTe/DCP/4P5lQkvRbuJIDxr8aSb1uwF/0dHLikDk/I5BogJphM+eJbgjxTdCUl7XupWL4Exy84IM1BY7jPbALeE146KDgFtsZvf+EX2eZcdJ9AzBet4YZHP94nIEM1SvNcVOmqI= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of lists.libvirt.org designates 8.43.85.245 as permitted sender) smtp.mailfrom=devel-bounces@lists.libvirt.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.libvirt.org (lists.libvirt.org [8.43.85.245]) by mx.zohomail.com with SMTPS id 1761724695478637.9092061938667; Wed, 29 Oct 2025 00:58:15 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 7251241A12; Wed, 29 Oct 2025 03:58:14 -0400 (EDT) Received: from [172.19.199.29] (lists.libvirt.org [8.43.85.245]) by lists.libvirt.org (Postfix) with ESMTP id 1722D41AB4; Wed, 29 Oct 2025 03:56:09 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 993) id E4EDD4186C; Wed, 29 Oct 2025 03:53:24 -0400 (EDT) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (3072 bits) server-digest SHA256) (No client certificate requested) by lists.libvirt.org (Postfix) with ESMTPS id B97FD41850 for ; Wed, 29 Oct 2025 03:53:23 -0400 (EDT) Received: from mx-prod-mc-02.mail-002.prod.us-west-2.aws.redhat.com (ec2-54-186-198-63.us-west-2.compute.amazonaws.com [54.186.198.63]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-589-W0d8FoWYOPKhmKmLaxKwxQ-1; Wed, 29 Oct 2025 03:53:21 -0400 Received: from mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.111]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-02.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id 9AD9919560B5 for ; Wed, 29 Oct 2025 07:53:20 +0000 (UTC) Received: from moe (unknown [10.43.3.236]) by mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id E5A2B1800452 for ; Wed, 29 Oct 2025 07:53:19 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-26) on lists.libvirt.org X-Spam-Level: X-Spam-Status: No, score=-5.0 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED,RCVD_IN_VALIDITY_RPBL_BLOCKED, RCVD_IN_VALIDITY_SAFE_BLOCKED,SPF_PASS autolearn=unavailable autolearn_force=no version=4.0.1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1761724403; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=2N/5iDg3E9UyIbovczrxPVF86MmWLoiFj3PXvJrpXiI=; b=SxhlnZG/g1Wyhq9gHvqsDeQjktK4/oOs1OIufgEMVmc8cGWZ1bJp6+BausMB4bBQGWg5Pe g0GDsPo5I/j6Xh+0LD5b6Cye+eAK3FCUApmBI2u5YMdbjtKy4kfQ+Y+1wlpQHRgUglMBE1 r+RLl7v4A4vAJLin/+jJ8m0jC11pT0o= X-MC-Unique: W0d8FoWYOPKhmKmLaxKwxQ-1 X-Mimecast-MFC-AGG-ID: W0d8FoWYOPKhmKmLaxKwxQ_1761724400 To: devel@lists.libvirt.org Subject: [PATCH 3/7] conf: Introduce virDomainMemoryIsVirtioModel() Date: Wed, 29 Oct 2025 08:53:03 +0100 Message-ID: <9068a5c0447659f80c41eef526a62eb6d8664c9c.1761724370.git.mprivozn@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.4.1 on 10.30.177.111 X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: yoYhR4oiz3Od7XXsvlx3K2EW5Bt9R5PaRjJXjtpa9sQ_1761724400 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Message-ID-Hash: THHGLRUJKWACWC3SPEJ2BCUA3TCZ6OEV X-Message-ID-Hash: THHGLRUJKWACWC3SPEJ2BCUA3TCZ6OEV X-MailFrom: mprivozn@redhat.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; header-match-devel.lists.libvirt.org-0; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header X-Mailman-Version: 3.3.10 Precedence: list List-Id: Development discussions about the libvirt library & tools Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: From: Michal Privoznik via Devel Reply-To: Michal Privoznik X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1761724702021158500 Content-Type: text/plain; charset="utf-8"; x-default="true" From: Michal Privoznik The aim is to return true for memory models that are virtio devices (virtio-mem and virtio-pmem) and false for everything else. Signed-off-by: Michal Privoznik Reviewed-by: Jiri Denemark --- src/conf/domain_conf.c | 20 ++++++++++++++++++++ src/conf/domain_conf.h | 1 + src/libvirt_private.syms | 1 + 3 files changed, 22 insertions(+) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 0d32bcad47..d430101dce 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -14333,6 +14333,26 @@ virDomainMemoryDefNew(virDomainMemoryModel model) } =20 =20 +bool +virDomainMemoryIsVirtioModel(const virDomainMemoryDef *def) +{ + switch (def->model) { + case VIR_DOMAIN_MEMORY_MODEL_VIRTIO_PMEM: + case VIR_DOMAIN_MEMORY_MODEL_VIRTIO_MEM: + return true; + + case VIR_DOMAIN_MEMORY_MODEL_NONE: + case VIR_DOMAIN_MEMORY_MODEL_DIMM: + case VIR_DOMAIN_MEMORY_MODEL_NVDIMM: + case VIR_DOMAIN_MEMORY_MODEL_SGX_EPC: + case VIR_DOMAIN_MEMORY_MODEL_LAST: + break; + } + + return false; +} + + static virDomainMemoryDef * virDomainMemoryDefParseXML(virDomainXMLOption *xmlopt, xmlNodePtr memdevNode, diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h index a63d922853..a279fdd43c 100644 --- a/src/conf/domain_conf.h +++ b/src/conf/domain_conf.h @@ -2806,6 +2806,7 @@ struct _virDomainMemoryDef { virDomainMemoryDef *virDomainMemoryDefNew(virDomainMemoryModel model); void virDomainMemoryDefFree(virDomainMemoryDef *def); G_DEFINE_AUTOPTR_CLEANUP_FUNC(virDomainMemoryDef, virDomainMemoryDefFree); +bool virDomainMemoryIsVirtioModel(const virDomainMemoryDef *def); =20 =20 typedef enum { diff --git a/src/libvirt_private.syms b/src/libvirt_private.syms index 26776dff2a..7269dd3786 100644 --- a/src/libvirt_private.syms +++ b/src/libvirt_private.syms @@ -529,6 +529,7 @@ virDomainMemoryFindByDeviceAlias; virDomainMemoryFindByDeviceInfo; virDomainMemoryFindInactiveByDef; virDomainMemoryInsert; +virDomainMemoryIsVirtioModel; virDomainMemoryModelTypeFromString; virDomainMemoryModelTypeToString; virDomainMemoryRemove; --=20 2.51.0 From nobody Fri Dec 12 14:09:14 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; dmarc=pass(p=reject dis=none) header.from=lists.libvirt.org ARC-Seal: i=1; a=rsa-sha256; t=1761724746; cv=none; d=zohomail.com; s=zohoarc; b=cuj8ju5DYTDCqUFkfTdLL+3NPhDNDm28oKI+1MXMqYUfep3Zoz9vm939mFU7aSnUFlC9JNNSsSNdTAFPKbL3El3/UBUwr8+RFYNllv72m8beOYGLojkMf5yru5OQtSjQuhjcWmdFabr/tpkgmxbKI1pcUYavv430AetIAR2mmkc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1761724746; h=Content-Type:Content-Transfer-Encoding:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Owner:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:Reply-To:References:Subject:Subject:To:To:Message-Id:Cc; bh=f1Mrh1j7eZQXRpBk37hb7ijtJyLwx0vnoeCr5ccwrB4=; b=cjAA0g9pFsyQSGRNOCCLAKlCHR48SlCzYrLqqypK5Pu+wkLpgl8MxF9DXFRkBy9hL6EWhs2c7qvbgvoRF3ESMyR6TZ0xkhWyJtLEFpBh4ybm3bcHh6avCnKoh8ffOMXznQ3l44FDWgCadb7Ipu34OzUQUcyLyCHrrp1f+cqRpA4= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of lists.libvirt.org designates 8.43.85.245 as permitted sender) smtp.mailfrom=devel-bounces@lists.libvirt.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.libvirt.org (lists.libvirt.org [8.43.85.245]) by mx.zohomail.com with SMTPS id 1761724746388965.3820505378084; Wed, 29 Oct 2025 00:59:06 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 993) id BDF1641958; Wed, 29 Oct 2025 03:59:05 -0400 (EDT) Received: from [172.19.199.29] (lists.libvirt.org [8.43.85.245]) by lists.libvirt.org (Postfix) with ESMTP id 55ADF41A11; Wed, 29 Oct 2025 03:56:26 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 993) id F190B41850; Wed, 29 Oct 2025 03:53:24 -0400 (EDT) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (3072 bits) server-digest SHA256) (No client certificate requested) by lists.libvirt.org (Postfix) with ESMTPS id 213044184F for ; Wed, 29 Oct 2025 03:53:24 -0400 (EDT) Received: from mx-prod-mc-02.mail-002.prod.us-west-2.aws.redhat.com (ec2-54-186-198-63.us-west-2.compute.amazonaws.com [54.186.198.63]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-595-e-UcxCjKO7e9_0_GUAszxA-1; Wed, 29 Oct 2025 03:53:22 -0400 Received: from mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.111]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-02.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id B752B19560A0 for ; Wed, 29 Oct 2025 07:53:21 +0000 (UTC) Received: from moe (unknown [10.43.3.236]) by mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id 0DE721800452 for ; Wed, 29 Oct 2025 07:53:20 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-26) on lists.libvirt.org X-Spam-Level: X-Spam-Status: No, score=-5.0 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED,RCVD_IN_VALIDITY_RPBL_BLOCKED, RCVD_IN_VALIDITY_SAFE_BLOCKED,SPF_PASS autolearn=unavailable autolearn_force=no version=4.0.1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1761724403; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=f1Mrh1j7eZQXRpBk37hb7ijtJyLwx0vnoeCr5ccwrB4=; b=Nr89ACfIHZTAiZrDW6s8Rr+kbqnrF8xpJInTG9W5oEFXedo6kBv6EWZULI93UCGFslWAhO zFXGE9qRlshLAVZcR+O9jehsL2DnKTnyHl2vuEqbdIz4YmeOH4MIiOykoQqxQAiJGOtR68 Nj2xR4ddGqzbpxYyDyegdmf43AeBktE= X-MC-Unique: e-UcxCjKO7e9_0_GUAszxA-1 X-Mimecast-MFC-AGG-ID: e-UcxCjKO7e9_0_GUAszxA_1761724401 To: devel@lists.libvirt.org Subject: [PATCH 4/7] qemu: Use virDomainMemoryIsVirtioModel() Date: Wed, 29 Oct 2025 08:53:04 +0100 Message-ID: <3c75dbe94d5c35b6d202c3427adc948a525fa9c3.1761724370.git.mprivozn@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.4.1 on 10.30.177.111 X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: Dc0EPJNgjecnFq2Dsi_Ba5KoBw-vN54HQXBd8ydmV0o_1761724401 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Message-ID-Hash: ZFGEVLISQFWMTPEMBQHB75U74FB4RES4 X-Message-ID-Hash: ZFGEVLISQFWMTPEMBQHB75U74FB4RES4 X-MailFrom: mprivozn@redhat.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; header-match-devel.lists.libvirt.org-0; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header X-Mailman-Version: 3.3.10 Precedence: list List-Id: Development discussions about the libvirt library & tools Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: From: Michal Privoznik via Devel Reply-To: Michal Privoznik X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1761724751390154100 Content-Type: text/plain; charset="utf-8"; x-default="true" From: Michal Privoznik Instead of having these big switch()-es that enumerate all memory models (but act only on virtio models), let's use virDomainMemoryIsVirtioModel() helper instead. Signed-off-by: Michal Privoznik Reviewed-by: Jiri Denemark --- src/qemu/qemu_domain_address.c | 44 +++++++--------------------------- 1 file changed, 9 insertions(+), 35 deletions(-) diff --git a/src/qemu/qemu_domain_address.c b/src/qemu/qemu_domain_address.c index 774541ca06..6d5c4785e8 100644 --- a/src/qemu/qemu_domain_address.c +++ b/src/qemu/qemu_domain_address.c @@ -293,18 +293,9 @@ qemuDomainPrimeVirtioDeviceAddresses(virDomainDef *def, } =20 for (i =3D 0; i < def->nmems; i++) { - switch (def->mems[i]->model) { - case VIR_DOMAIN_MEMORY_MODEL_VIRTIO_PMEM: - case VIR_DOMAIN_MEMORY_MODEL_VIRTIO_MEM: - if (def->mems[i]->info.type =3D=3D VIR_DOMAIN_DEVICE_ADDRESS_T= YPE_NONE) - def->mems[i]->info.type =3D type; - break; - case VIR_DOMAIN_MEMORY_MODEL_NONE: - case VIR_DOMAIN_MEMORY_MODEL_DIMM: - case VIR_DOMAIN_MEMORY_MODEL_NVDIMM: - case VIR_DOMAIN_MEMORY_MODEL_SGX_EPC: - case VIR_DOMAIN_MEMORY_MODEL_LAST: - break; + if (virDomainMemoryIsVirtioModel(def->mems[i]) && + def->mems[i]->info.type =3D=3D VIR_DOMAIN_DEVICE_ADDRESS_TYPE_= NONE) { + def->mems[i]->info.type =3D type; } } =20 @@ -1024,18 +1015,10 @@ qemuDomainDeviceCalculatePCIConnectFlags(virDomainD= eviceDef *dev, break; =20 case VIR_DOMAIN_DEVICE_MEMORY: - switch (dev->data.memory->model) { - case VIR_DOMAIN_MEMORY_MODEL_VIRTIO_PMEM: - case VIR_DOMAIN_MEMORY_MODEL_VIRTIO_MEM: + if (virDomainMemoryIsVirtioModel(dev->data.memory)) return virtioFlags; =20 - case VIR_DOMAIN_MEMORY_MODEL_NONE: - case VIR_DOMAIN_MEMORY_MODEL_DIMM: - case VIR_DOMAIN_MEMORY_MODEL_NVDIMM: - case VIR_DOMAIN_MEMORY_MODEL_SGX_EPC: - case VIR_DOMAIN_MEMORY_MODEL_LAST: - return 0; - } + return 0; break; =20 case VIR_DOMAIN_DEVICE_CRYPTO: @@ -2444,19 +2427,10 @@ qemuDomainAssignDevicePCISlots(virDomainDef *def, for (i =3D 0; i < def->nmems; i++) { virDomainMemoryDef *mem =3D def->mems[i]; =20 - switch (mem->model) { - case VIR_DOMAIN_MEMORY_MODEL_VIRTIO_PMEM: - case VIR_DOMAIN_MEMORY_MODEL_VIRTIO_MEM: - if (virDeviceInfoPCIAddressIsWanted(&mem->info) && - qemuDomainPCIAddressReserveNextAddr(addrs, &mem->info) < 0) - return -1; - break; - case VIR_DOMAIN_MEMORY_MODEL_NONE: - case VIR_DOMAIN_MEMORY_MODEL_DIMM: - case VIR_DOMAIN_MEMORY_MODEL_NVDIMM: - case VIR_DOMAIN_MEMORY_MODEL_SGX_EPC: - case VIR_DOMAIN_MEMORY_MODEL_LAST: - break; + if (virDomainMemoryIsVirtioModel(mem) && + virDeviceInfoPCIAddressIsWanted(&mem->info) && + qemuDomainPCIAddressReserveNextAddr(addrs, &mem->info) < 0) { + return -1; } } =20 --=20 2.51.0 From nobody Fri Dec 12 14:09:14 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; dmarc=pass(p=reject dis=none) header.from=lists.libvirt.org ARC-Seal: i=1; a=rsa-sha256; t=1761724806; cv=none; d=zohomail.com; s=zohoarc; b=d/S4GdEl/tLtTmOBCC62UiXWUpl1NB1F/uv5GXhj8lU+Jb1C2PKgTZIbKCGknxEySKydWWiZa3O6ufVVzJcU7IKohAz3FwcOK4Ae6hOtqKq6IuwRzJX8o9YtZAtgDhIZVohDMyTq9Q2Zj9dFeIMGSYuLO+I3sf5KlJ9eUB1C4vo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1761724806; h=Content-Type:Content-Transfer-Encoding:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Owner:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:Reply-To:References:Subject:Subject:To:To:Message-Id:Cc; bh=t8TkzlOdtZaV4mKKt5jGOkFxDvolKIfzMCLQOmr5I7I=; b=VYSy4mRoy34yobnftJC05/6oE+Al5+i2IHKrj4QlEht3kWGB3g0OAXIpCAdsBgEQo+MQnvTrsUOv4LmhkSO7Hvoqgl7CBs+VE2bv5Bsnte/G498110hzXeXCWo1oURo1t+xcdV/2mAe4d0mNS3/ayA6H2jUMBtYLWvWsXQZv/k4= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of lists.libvirt.org designates 8.43.85.245 as permitted sender) smtp.mailfrom=devel-bounces@lists.libvirt.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.libvirt.org (lists.libvirt.org [8.43.85.245]) by mx.zohomail.com with SMTPS id 1761724806238359.3310662008495; Wed, 29 Oct 2025 01:00:06 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 4574B41922; Wed, 29 Oct 2025 04:00:05 -0400 (EDT) Received: from [172.19.199.29] (lists.libvirt.org [8.43.85.245]) by lists.libvirt.org (Postfix) with ESMTP id 0297D41997; Wed, 29 Oct 2025 03:56:37 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 3C0EE41863; Wed, 29 Oct 2025 03:53:26 -0400 (EDT) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (3072 bits) server-digest SHA256) (No client certificate requested) by lists.libvirt.org (Postfix) with ESMTPS id 4BC9B41850 for ; Wed, 29 Oct 2025 03:53:25 -0400 (EDT) Received: from mx-prod-mc-05.mail-002.prod.us-west-2.aws.redhat.com (ec2-54-186-198-63.us-west-2.compute.amazonaws.com [54.186.198.63]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-397-T6RzBW75McW-g1Pkf8_vKg-1; Wed, 29 Oct 2025 03:53:23 -0400 Received: from mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.111]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-05.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id DC4D519560AA for ; Wed, 29 Oct 2025 07:53:22 +0000 (UTC) Received: from moe (unknown [10.43.3.236]) by mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id 32BD91800452 for ; Wed, 29 Oct 2025 07:53:21 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-26) on lists.libvirt.org X-Spam-Level: X-Spam-Status: No, score=-5.0 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED,RCVD_IN_VALIDITY_RPBL_BLOCKED, RCVD_IN_VALIDITY_SAFE_BLOCKED,SPF_PASS autolearn=unavailable autolearn_force=no version=4.0.1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1761724405; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=t8TkzlOdtZaV4mKKt5jGOkFxDvolKIfzMCLQOmr5I7I=; b=hzvqzsasC++LkrbyHVFQJGEDnKV8TMgnYE0KDOArwPKIuiZOISlagoE4DC6AvOfGqTzXaS H3H6ehDNBa2Agijse4eQm2Y36hVY4GjbD2h/T5wJ3Swa7AFc4WXH1awwvWQMtI+C81aFHc geouAqVmd8RUjc2lt+PsFm+6XWaPTHM= X-MC-Unique: T6RzBW75McW-g1Pkf8_vKg-1 X-Mimecast-MFC-AGG-ID: T6RzBW75McW-g1Pkf8_vKg_1761724403 To: devel@lists.libvirt.org Subject: [PATCH 5/7] conf: Introduce virtio options for virtio memory models Date: Wed, 29 Oct 2025 08:53:05 +0100 Message-ID: In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.4.1 on 10.30.177.111 X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: eR9zYzVbsRGTcU0Jur4FJ7qSjE5RVqaOp0hLD40uUmw_1761724403 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Message-ID-Hash: AYA65AK34XDVAVS7WR6AFBKVDITFIUED X-Message-ID-Hash: AYA65AK34XDVAVS7WR6AFBKVDITFIUED X-MailFrom: mprivozn@redhat.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; header-match-devel.lists.libvirt.org-0; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header X-Mailman-Version: 3.3.10 Precedence: list List-Id: Development discussions about the libvirt library & tools Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: From: Michal Privoznik via Devel Reply-To: Michal Privoznik X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1761724807275158500 Content-Type: text/plain; charset="utf-8"; x-default="true" From: Michal Privoznik Both virtio-mem and virtio-pmem memory models are virtio devices and as such support setting various virtio knobs (iommu, ats, packed, page_per_vq) common to other virtio devices. Introduce element as a child to element, just like we do for other virtio devices, where aforementioned knobs live. NB, this is without docs changes, since we do not document which virtio devices support these knobs and each one is already documented. Also, the virtio-options.xml test needed some additional adjustment (apart from adding virtio-mem device) to enable memory hotplug. Signed-off-by: Michal Privoznik Reviewed-by: Jiri Denemark --- src/conf/domain_conf.c | 12 ++++++++++ src/conf/domain_conf.h | 1 + src/conf/domain_validate.c | 5 ++++ src/conf/schemas/domaincommon.rng | 5 ++++ .../virtio-options.x86_64-latest.args | 9 +++++--- tests/qemuxmlconfdata/virtio-options.xml | 23 +++++++++++++++++-- 6 files changed, 50 insertions(+), 5 deletions(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index d430101dce..c09f026a1c 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -14413,6 +14413,10 @@ virDomainMemoryDefParseXML(virDomainXMLOption *xml= opt, &def->info, flags) < 0) return NULL; =20 + if (virDomainVirtioOptionsParseXML(virXPathNode("./driver", ctxt), + &def->virtio) < 0) + return NULL; + return g_steal_pointer(&def); } =20 @@ -22073,6 +22077,9 @@ virDomainMemoryDefCheckABIStability(virDomainMemory= Def *src, break; } =20 + if (!virDomainVirtioOptionsCheckABIStability(src->virtio, dst->virtio)) + return false; + return virDomainDeviceInfoCheckABIStability(&src->info, &dst->info); } =20 @@ -26626,6 +26633,7 @@ virDomainMemoryDefFormat(virBuffer *buf, const char *model =3D virDomainMemoryModelTypeToString(def->model); g_auto(virBuffer) attrBuf =3D VIR_BUFFER_INITIALIZER; g_auto(virBuffer) childBuf =3D VIR_BUFFER_INIT_CHILD(buf); + g_auto(virBuffer) driverAttrBuf =3D VIR_BUFFER_INITIALIZER; =20 virBufferAsprintf(&attrBuf, " model=3D'%s'", model); if (def->access) @@ -26643,6 +26651,10 @@ virDomainMemoryDefFormat(virBuffer *buf, virBufferAsprintf(&childBuf, "%s\n", uuidstr); } =20 + virDomainVirtioOptionsFormat(&driverAttrBuf, def->virtio); + + virXMLFormatElement(&childBuf, "driver", &driverAttrBuf, NULL); + virDomainMemorySourceDefFormat(&childBuf, def); =20 virDomainMemoryTargetDefFormat(&childBuf, def, flags); diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h index a279fdd43c..b265bf224b 100644 --- a/src/conf/domain_conf.h +++ b/src/conf/domain_conf.h @@ -2801,6 +2801,7 @@ struct _virDomainMemoryDef { } target; =20 virDomainDeviceInfo info; + virDomainVirtioOptions *virtio; }; =20 virDomainMemoryDef *virDomainMemoryDefNew(virDomainMemoryModel model); diff --git a/src/conf/domain_validate.c b/src/conf/domain_validate.c index eea9b38b21..17955decc0 100644 --- a/src/conf/domain_validate.c +++ b/src/conf/domain_validate.c @@ -2723,6 +2723,11 @@ virDomainMemoryDefValidate(const virDomainMemoryDef = *mem, if (virDomainMemoryDefCheckConflict(mem, def) < 0) return -1; =20 + if (!virDomainMemoryIsVirtioModel(mem) && + virDomainCheckVirtioOptionsAreAbsent(mem->virtio) < 0) { + return -1; + } + return 0; } =20 diff --git a/src/conf/schemas/domaincommon.rng b/src/conf/schemas/domaincom= mon.rng index ace74fee08..110f6cbc69 100644 --- a/src/conf/schemas/domaincommon.rng +++ b/src/conf/schemas/domaincommon.rng @@ -7502,6 +7502,11 @@ + + + + + diff --git a/tests/qemuxmlconfdata/virtio-options.x86_64-latest.args b/test= s/qemuxmlconfdata/virtio-options.x86_64-latest.args index 03b3dd9691..f2b9ee2afe 100644 --- a/tests/qemuxmlconfdata/virtio-options.x86_64-latest.args +++ b/tests/qemuxmlconfdata/virtio-options.x86_64-latest.args @@ -10,13 +10,14 @@ XDG_CONFIG_HOME=3D/var/lib/libvirt/qemu/domain--1-QEMUG= uest1/.config \ -name guest=3DQEMUGuest1,debug-threads=3Don \ -S \ -object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/va= r/lib/libvirt/qemu/domain--1-QEMUGuest1/master-key.aes"}' \ --machine pc,usb=3Doff,dump-guest-core=3Doff,memory-backend=3Dpc.ram,acpi= =3Doff \ +-machine pc,usb=3Doff,dump-guest-core=3Doff,acpi=3Doff \ -accel tcg \ -cpu qemu64 \ --m size=3D219136k \ --object '{"qom-type":"memory-backend-ram","id":"pc.ram","size":224395264}'= \ +-m size=3D2316288k,maxmem=3D1099511627776k \ -overcommit mem-lock=3Doff \ -smp 1,sockets=3D1,cores=3D1,threads=3D1 \ +-object '{"qom-type":"memory-backend-ram","id":"ram-node0","size":23718789= 12}' \ +-numa node,nodeid=3D0,cpus=3D0,memdev=3Dram-node0 \ -uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \ -display none \ -no-user-config \ @@ -29,6 +30,8 @@ XDG_CONFIG_HOME=3D/var/lib/libvirt/qemu/domain--1-QEMUGue= st1/.config \ -device '{"driver":"piix3-usb-uhci","id":"usb","bus":"pci.0","addr":"0x1.0= x2"}' \ -device '{"driver":"virtio-scsi-pci","iommu_platform":true,"ats":true,"pac= ked":true,"page-per-vq":true,"id":"scsi0","bus":"pci.0","addr":"0x8"}' \ -device '{"driver":"virtio-serial-pci","iommu_platform":true,"ats":true,"p= acked":true,"page-per-vq":true,"id":"virtio-serial0","bus":"pci.0","addr":"= 0x9"}' \ +-object '{"qom-type":"memory-backend-file","id":"memvirtiomem0","mem-path"= :"/dev/hugepages2M/libvirt/qemu/-1-QEMUGuest1","reserve":false,"size":21474= 83648,"host-nodes":[1,2,3],"policy":"bind"}' \ +-device '{"driver":"virtio-mem-pci","node":0,"block-size":2097152,"request= ed-size":1073741824,"memdev":"memvirtiomem0","prealloc":true,"memaddr":5637= 144576,"dynamic-memslots":true,"id":"virtiomem0","bus":"pci.0","addr":"0x5"= }' \ -blockdev '{"driver":"file","filename":"/var/lib/libvirt/images/img1","nod= e-name":"libvirt-1-storage","read-only":false}' \ -device '{"driver":"virtio-blk-pci","iommu_platform":true,"ats":true,"pack= ed":true,"page-per-vq":true,"bus":"pci.0","addr":"0xa","drive":"libvirt-1-s= torage","id":"virtio-disk0","bootindex":1}' \ -fsdev local,security_model=3Dpassthrough,id=3Dfsdev-fs0,path=3D/export/fs= 1 \ diff --git a/tests/qemuxmlconfdata/virtio-options.xml b/tests/qemuxmlconfda= ta/virtio-options.xml index 486bc453a1..05eaae35a9 100644 --- a/tests/qemuxmlconfdata/virtio-options.xml +++ b/tests/qemuxmlconfdata/virtio-options.xml @@ -1,8 +1,9 @@ QEMUGuest1 c7a5fdbd-edaf-9455-926a-d65c16db1809 - 219136 - 219136 + 1099511627776 + 2316288 + 2316288 1 hvm @@ -10,6 +11,9 @@ qemu64 + + + destroy @@ -92,5 +96,20 @@
+ + + + 1-3 + 2048 + + + 2097152 + 0 + 2048 + 1048576 +
+ +
+ --=20 2.51.0 From nobody Fri Dec 12 14:09:14 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; dmarc=pass(p=reject dis=none) header.from=lists.libvirt.org ARC-Seal: i=1; a=rsa-sha256; t=1761724873; cv=none; d=zohomail.com; s=zohoarc; b=aH+7midNiF8NFdP3utleEye3yrWSkEvrjOP4ahfMPMVycDbNu2I3L37Q38MQIOvZdAEYUQxsdhRqioSPq162SrAMEQRBJRNNDTrY30TuOFcLwWF+Fk8pBoK0r5sPoR/iERnv713mZsSu+kYkDbPlciUtyqH0fJ0SyWfOQBnerRs= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1761724873; h=Content-Type:Content-Transfer-Encoding:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Owner:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:Reply-To:References:Subject:Subject:To:To:Message-Id:Cc; bh=FMGMlUKbDfjOsOUPrlstHgVsSSWDlBmJ1b0Z+HY+l88=; b=X6jkXSVp84ppoTW21jJlzfJyYnFHHovEZrYRnGBxzuw0lqYXLRFOxjfLKcNg4QgFQ636urbjboJPAyOR5FNeULc/2xJRQHNH4Fz+A7I5I9v8NMV4KFy1Jkghs4lf6tK6vwZfFWMtYHFHUP3fvROVvAtPpTlpArGleCFiNiBJm1U= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of lists.libvirt.org designates 8.43.85.245 as permitted sender) smtp.mailfrom=devel-bounces@lists.libvirt.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.libvirt.org (lists.libvirt.org [8.43.85.245]) by mx.zohomail.com with SMTPS id 1761724873942347.7020547779049; Wed, 29 Oct 2025 01:01:13 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 0610E419A7; Wed, 29 Oct 2025 04:01:12 -0400 (EDT) Received: from [172.19.199.29] (lists.libvirt.org [8.43.85.245]) by lists.libvirt.org (Postfix) with ESMTP id 764B541C25; Wed, 29 Oct 2025 03:56:41 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 993) id E6C3441851; Wed, 29 Oct 2025 03:53:27 -0400 (EDT) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (3072 bits) server-digest SHA256) (No client certificate requested) by lists.libvirt.org (Postfix) with ESMTPS id 273B941850 for ; Wed, 29 Oct 2025 03:53:27 -0400 (EDT) Received: from mx-prod-mc-04.mail-002.prod.us-west-2.aws.redhat.com (ec2-54-186-198-63.us-west-2.compute.amazonaws.com [54.186.198.63]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-214-OKZnXvN1PE2SoXvSb6yEHw-1; Wed, 29 Oct 2025 03:53:24 -0400 Received: from mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.111]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-04.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id 04F8219541BF for ; Wed, 29 Oct 2025 07:53:24 +0000 (UTC) Received: from moe (unknown [10.43.3.236]) by mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id 4EEEF180057E for ; Wed, 29 Oct 2025 07:53:23 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-26) on lists.libvirt.org X-Spam-Level: X-Spam-Status: No, score=-5.0 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED,RCVD_IN_VALIDITY_RPBL_BLOCKED, RCVD_IN_VALIDITY_SAFE_BLOCKED,SPF_PASS autolearn=unavailable autolearn_force=no version=4.0.1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1761724406; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=FMGMlUKbDfjOsOUPrlstHgVsSSWDlBmJ1b0Z+HY+l88=; b=B+aAUbaGv6QFPGic3hFXrIjmlPc/Hj+M6oBzqoTD4Yzn1dqCYJDqTRPTca0DS+59Y6Wahh d6YYJDpQGZ+APowRPd0ncEEzSvWmXi9iVlFy29qKdJGtJPxT2RNCoPd64saEFxT4gTuHvc WkvTZqpgTR0Bn1kWLaBQL4J1U6Svomg= X-MC-Unique: OKZnXvN1PE2SoXvSb6yEHw-1 X-Mimecast-MFC-AGG-ID: OKZnXvN1PE2SoXvSb6yEHw_1761724404 To: devel@lists.libvirt.org Subject: [PATCH 6/7] qemu_command: Generate virtio options for memory device Date: Wed, 29 Oct 2025 08:53:06 +0100 Message-ID: <4a59c4f06183f994dafe23f7dc09cbaf66f5557e.1761724370.git.mprivozn@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.4.1 on 10.30.177.111 X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: 9qvZ-IiC3Hn7PgthjjV0mcVUPA9hvJFTO_ILQ_sWRC4_1761724404 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Message-ID-Hash: AGPSGLO7RRGIRP74575ZYNI3FKE3O5A6 X-Message-ID-Hash: AGPSGLO7RRGIRP74575ZYNI3FKE3O5A6 X-MailFrom: mprivozn@redhat.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; header-match-devel.lists.libvirt.org-0; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header X-Mailman-Version: 3.3.10 Precedence: list List-Id: Development discussions about the libvirt library & tools Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: From: Michal Privoznik via Devel Reply-To: Michal Privoznik X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1761724880076158500 Content-Type: text/plain; charset="utf-8"; x-default="true" From: Michal Privoznik Thanks to previous refactors (namely v11.1.0-rc1~142) this is trivial. There's all the infrastructure needed to generate virtio options onto cmd line, all that's left to do is set a pointer to appropriate struct member. Resolves: https://issues.redhat.com/browse/RHEL-7493 Signed-off-by: Michal Privoznik Reviewed-by: Jiri Denemark --- src/qemu/qemu_command.c | 2 ++ tests/qemuxmlconfdata/virtio-options.x86_64-latest.args | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c index fcf5fc1935..c538a9fb2f 100644 --- a/src/qemu/qemu_command.c +++ b/src/qemu/qemu_command.c @@ -983,9 +983,11 @@ qemuBuildVirtioDevGetConfigDev(const virDomainDeviceDe= f *device, switch (device->data.memory->model) { case VIR_DOMAIN_MEMORY_MODEL_VIRTIO_PMEM: *baseName =3D "virtio-pmem"; + *virtioOptions =3D device->data.memory->virtio; break; case VIR_DOMAIN_MEMORY_MODEL_VIRTIO_MEM: *baseName =3D "virtio-mem"; + *virtioOptions =3D device->data.memory->virtio; break; case VIR_DOMAIN_MEMORY_MODEL_DIMM: case VIR_DOMAIN_MEMORY_MODEL_NVDIMM: diff --git a/tests/qemuxmlconfdata/virtio-options.x86_64-latest.args b/test= s/qemuxmlconfdata/virtio-options.x86_64-latest.args index f2b9ee2afe..0f65cefd57 100644 --- a/tests/qemuxmlconfdata/virtio-options.x86_64-latest.args +++ b/tests/qemuxmlconfdata/virtio-options.x86_64-latest.args @@ -31,7 +31,7 @@ XDG_CONFIG_HOME=3D/var/lib/libvirt/qemu/domain--1-QEMUGue= st1/.config \ -device '{"driver":"virtio-scsi-pci","iommu_platform":true,"ats":true,"pac= ked":true,"page-per-vq":true,"id":"scsi0","bus":"pci.0","addr":"0x8"}' \ -device '{"driver":"virtio-serial-pci","iommu_platform":true,"ats":true,"p= acked":true,"page-per-vq":true,"id":"virtio-serial0","bus":"pci.0","addr":"= 0x9"}' \ -object '{"qom-type":"memory-backend-file","id":"memvirtiomem0","mem-path"= :"/dev/hugepages2M/libvirt/qemu/-1-QEMUGuest1","reserve":false,"size":21474= 83648,"host-nodes":[1,2,3],"policy":"bind"}' \ --device '{"driver":"virtio-mem-pci","node":0,"block-size":2097152,"request= ed-size":1073741824,"memdev":"memvirtiomem0","prealloc":true,"memaddr":5637= 144576,"dynamic-memslots":true,"id":"virtiomem0","bus":"pci.0","addr":"0x5"= }' \ +-device '{"driver":"virtio-mem-pci","iommu_platform":true,"ats":true,"pack= ed":true,"page-per-vq":true,"node":0,"block-size":2097152,"requested-size":= 1073741824,"memdev":"memvirtiomem0","prealloc":true,"memaddr":5637144576,"d= ynamic-memslots":true,"id":"virtiomem0","bus":"pci.0","addr":"0x5"}' \ -blockdev '{"driver":"file","filename":"/var/lib/libvirt/images/img1","nod= e-name":"libvirt-1-storage","read-only":false}' \ -device '{"driver":"virtio-blk-pci","iommu_platform":true,"ats":true,"pack= ed":true,"page-per-vq":true,"bus":"pci.0","addr":"0xa","drive":"libvirt-1-s= torage","id":"virtio-disk0","bootindex":1}' \ -fsdev local,security_model=3Dpassthrough,id=3Dfsdev-fs0,path=3D/export/fs= 1 \ --=20 2.51.0 From nobody Fri Dec 12 14:09:14 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; dmarc=pass(p=reject dis=none) header.from=lists.libvirt.org ARC-Seal: i=1; a=rsa-sha256; t=1761724951; cv=none; d=zohomail.com; s=zohoarc; b=luYuZgzNNPKpt4JBKFQjtbiJCff+hSBUzq8DHk3L6PUnaprzr7tF2mrnRxNjOyn/4Nm+aGlN2TYAIml+F73e0W1bvqmlhj75Ra8nxh2CiABIzDt7bBDbHpMUpk1hHY+xgkd4rWasjaUQWTdbNuMnXpjg6wgQMJbpFgEfClL2xs0= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1761724951; h=Content-Type:Content-Transfer-Encoding:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Owner:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:Reply-To:References:Subject:Subject:To:To:Message-Id:Cc; bh=pT7c1sIQQfp64NE/WQ8q8hAJrDfwK4F8VLhgwsWCugU=; b=LFFORL/p8HkbXZbUx4AuhwQDIC/bhlXhk96APdgl8qnz+iwRLx92m3xwoBerhJ21YOmHkmzMGi9JjdudQ9eAOzYL7uEXDf4pes8HNpYTzTRybhoXIa3qa41zKg30bwmgeNDmmy9UMUi/nlFMWedz9Bepqu2aFO14KzBSXjfjJqY= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of lists.libvirt.org designates 8.43.85.245 as permitted sender) smtp.mailfrom=devel-bounces@lists.libvirt.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.libvirt.org (lists.libvirt.org [8.43.85.245]) by mx.zohomail.com with SMTPS id 176172495164059.68822018998719; Wed, 29 Oct 2025 01:02:31 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 993) id D095641832; Wed, 29 Oct 2025 04:02:30 -0400 (EDT) Received: from [172.19.199.29] (lists.libvirt.org [8.43.85.245]) by lists.libvirt.org (Postfix) with ESMTP id A5C8B43DCE; Wed, 29 Oct 2025 03:56:48 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 77F0441851; Wed, 29 Oct 2025 03:53:32 -0400 (EDT) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (3072 bits) server-digest SHA256) (No client certificate requested) by lists.libvirt.org (Postfix) with ESMTPS id 2A45941850 for ; Wed, 29 Oct 2025 03:53:31 -0400 (EDT) Received: from mx-prod-mc-06.mail-002.prod.us-west-2.aws.redhat.com (ec2-35-165-154-97.us-west-2.compute.amazonaws.com [35.165.154.97]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-284-Gy-sDbtVMUqgqqoPGeqxQg-1; Wed, 29 Oct 2025 03:53:26 -0400 Received: from mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.111]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-06.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id 3FCE618089A2 for ; Wed, 29 Oct 2025 07:53:25 +0000 (UTC) Received: from moe (unknown [10.43.3.236]) by mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id 82F3A1800452 for ; Wed, 29 Oct 2025 07:53:24 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-26) on lists.libvirt.org X-Spam-Level: X-Spam-Status: No, score=-5.0 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED,RCVD_IN_VALIDITY_RPBL_BLOCKED, RCVD_IN_VALIDITY_SAFE_BLOCKED,SPF_PASS autolearn=unavailable autolearn_force=no version=4.0.1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1761724410; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=pT7c1sIQQfp64NE/WQ8q8hAJrDfwK4F8VLhgwsWCugU=; b=c6AmX+i+RVxSx8jkod0uNwIKs6S2V9sOmSQid3EfE3n0HaXYmh8Y15qYC/472S5SCybG2I iOA6ZCIMGDvg93f+QfOByiruvRqwouI6/1LNhopCNrzgqIcZHCeAFPFsjFq7Vfa1M3gmWw NL8ns6IuyWJj+5RkvQwhF0pCK/YRlQE= X-MC-Unique: Gy-sDbtVMUqgqqoPGeqxQg-1 X-Mimecast-MFC-AGG-ID: Gy-sDbtVMUqgqqoPGeqxQg_1761724405 To: devel@lists.libvirt.org Subject: [PATCH 7/7] NEWS: Document virtio options for memory models Date: Wed, 29 Oct 2025 08:53:07 +0100 Message-ID: In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.4.1 on 10.30.177.111 X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: 5of493CgoOOpIis_MAK6YdqBUpzjpruj4ceU94PYN5A_1761724405 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Message-ID-Hash: C5PJ3S2EC73BOGEHL5HN2UUILOHHKHDI X-Message-ID-Hash: C5PJ3S2EC73BOGEHL5HN2UUILOHHKHDI X-MailFrom: mprivozn@redhat.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; header-match-devel.lists.libvirt.org-0; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header X-Mailman-Version: 3.3.10 Precedence: list List-Id: Development discussions about the libvirt library & tools Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: From: Michal Privoznik via Devel Reply-To: Michal Privoznik X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1761724952761158500 Content-Type: text/plain; charset="utf-8"; x-default="true" From: Michal Privoznik Signed-off-by: Michal Privoznik Reviewed-by: Jiri Denemark --- NEWS.rst | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/NEWS.rst b/NEWS.rst index afdb26cebf..ee11435e0e 100644 --- a/NEWS.rst +++ b/NEWS.rst @@ -50,6 +50,12 @@ v11.9.0 (unreleased) Some Hyper-V enlightenments may require some other enlightenments to be turned on. Libvirt now validates these for new domains. =20 + * qemu: Introduce virtio options for virtio memory models + + Both virtio-mem and virtio-pmem memory models are virtio devices and as + such now support setting various virtio knobs (iommu, ats, packed, + page_per_vq) common to other virtio devices. + * **Bug fixes** =20 =20 --=20 2.51.0