From nobody Tue May 7 19:12:17 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) client-ip=209.132.183.28; envelope-from=libvir-list-bounces@redhat.com; helo=mx1.redhat.com; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by mx.zohomail.com with SMTPS id 1550231766675462.80296631799706; Fri, 15 Feb 2019 03:56:06 -0800 (PST) Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.phx2.redhat.com [10.5.11.15]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 32F1FA3034; Fri, 15 Feb 2019 11:56:04 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 4B1495D6A9; Fri, 15 Feb 2019 11:56:03 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id 6C12D3D39D; Fri, 15 Feb 2019 11:55:59 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id x1FBtw6G004386 for ; Fri, 15 Feb 2019 06:55:58 -0500 Received: by smtp.corp.redhat.com (Postfix) id 6696B26E59; Fri, 15 Feb 2019 11:55:58 +0000 (UTC) Received: from kinshicho.brq.redhat.com (unknown [10.43.2.212]) by smtp.corp.redhat.com (Postfix) with ESMTPS id E0CA626E71 for ; Fri, 15 Feb 2019 11:55:57 +0000 (UTC) From: Andrea Bolognani To: libvir-list@redhat.com Date: Fri, 15 Feb 2019 12:55:46 +0100 Message-Id: <20190215115552.23904-2-abologna@redhat.com> In-Reply-To: <20190215115552.23904-1-abologna@redhat.com> References: <20190215115552.23904-1-abologna@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 1/7] conf: Introduce virDomainChrDefPostParse() X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: quoted-printable Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.15 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.27]); Fri, 15 Feb 2019 11:56:05 +0000 (UTC) Content-Type: text/plain; charset="utf-8" Minor tweaks to ensure compliance with our coding style. Signed-off-by: Andrea Bolognani --- src/conf/domain_conf.c | 59 ++++++++++++++++++++++++------------------ 1 file changed, 34 insertions(+), 25 deletions(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 5d49f4388c..74bb18d726 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -4810,6 +4810,38 @@ virDomainCheckVirtioOptions(virDomainVirtioOptionsPt= r virtio) } =20 =20 +static int +virDomainChrDefPostParse(virDomainChrDefPtr chr, + const virDomainDef *def) +{ + const virDomainChrDef **arrPtr; + size_t i, cnt; + + virDomainChrGetDomainPtrs(def, chr->deviceType, &arrPtr, &cnt); + + if (chr->deviceType =3D=3D VIR_DOMAIN_CHR_DEVICE_TYPE_CONSOLE && + chr->targetType =3D=3D VIR_DOMAIN_CHR_CONSOLE_TARGET_TYPE_NONE) { + chr->targetType =3D VIR_DOMAIN_CHR_CONSOLE_TARGET_TYPE_SERIAL; + } + + if (chr->target.port =3D=3D -1 && + (chr->deviceType =3D=3D VIR_DOMAIN_CHR_DEVICE_TYPE_PARALLEL || + chr->deviceType =3D=3D VIR_DOMAIN_CHR_DEVICE_TYPE_SERIAL || + chr->deviceType =3D=3D VIR_DOMAIN_CHR_DEVICE_TYPE_CONSOLE)) { + int maxport =3D -1; + + for (i =3D 0; i < cnt; i++) { + if (arrPtr[i]->target.port > maxport) + maxport =3D arrPtr[i]->target.port; + } + + chr->target.port =3D maxport + 1; + } + + return 0; +} + + static int virDomainVsockDefPostParse(virDomainVsockDefPtr vsock) { @@ -4831,31 +4863,8 @@ virDomainDeviceDefPostParseCommon(virDomainDeviceDef= Ptr dev, unsigned int parseFlags ATTRIBUTE_UNUSED, virDomainXMLOptionPtr xmlopt) { - if (dev->type =3D=3D VIR_DOMAIN_DEVICE_CHR) { - virDomainChrDefPtr chr =3D dev->data.chr; - const virDomainChrDef **arrPtr; - size_t i, cnt; - - virDomainChrGetDomainPtrs(def, chr->deviceType, &arrPtr, &cnt); - - if (chr->deviceType =3D=3D VIR_DOMAIN_CHR_DEVICE_TYPE_CONSOLE && - chr->targetType =3D=3D VIR_DOMAIN_CHR_CONSOLE_TARGET_TYPE_NONE) - chr->targetType =3D VIR_DOMAIN_CHR_CONSOLE_TARGET_TYPE_SERIAL; - - if (chr->target.port =3D=3D -1 && - (chr->deviceType =3D=3D VIR_DOMAIN_CHR_DEVICE_TYPE_PARALLEL || - chr->deviceType =3D=3D VIR_DOMAIN_CHR_DEVICE_TYPE_SERIAL || - chr->deviceType =3D=3D VIR_DOMAIN_CHR_DEVICE_TYPE_CONSOLE)) { - int maxport =3D -1; - - for (i =3D 0; i < cnt; i++) { - if (arrPtr[i]->target.port > maxport) - maxport =3D arrPtr[i]->target.port; - } - - chr->target.port =3D maxport + 1; - } - } + if (dev->type =3D=3D VIR_DOMAIN_DEVICE_CHR) + return virDomainChrDefPostParse(dev->data.chr, def); =20 /* set default path for virtio-rng "random" backend to /dev/random */ if (dev->type =3D=3D VIR_DOMAIN_DEVICE_RNG && --=20 2.20.1 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Tue May 7 19:12:17 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) client-ip=209.132.183.28; envelope-from=libvir-list-bounces@redhat.com; helo=mx1.redhat.com; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by mx.zohomail.com with SMTPS id 1550231766958947.9849185891356; Fri, 15 Feb 2019 03:56:06 -0800 (PST) Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 315421441B9; Fri, 15 Feb 2019 11:56:04 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 856765E7A8; Fri, 15 Feb 2019 11:56:03 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id A9DBB3F954; Fri, 15 Feb 2019 11:56:01 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id x1FBtxBG004393 for ; Fri, 15 Feb 2019 06:55:59 -0500 Received: by smtp.corp.redhat.com (Postfix) id 3996F26E59; Fri, 15 Feb 2019 11:55:59 +0000 (UTC) Received: from kinshicho.brq.redhat.com (unknown [10.43.2.212]) by smtp.corp.redhat.com (Postfix) with ESMTPS id B459926E65 for ; Fri, 15 Feb 2019 11:55:58 +0000 (UTC) From: Andrea Bolognani To: libvir-list@redhat.com Date: Fri, 15 Feb 2019 12:55:47 +0100 Message-Id: <20190215115552.23904-3-abologna@redhat.com> In-Reply-To: <20190215115552.23904-1-abologna@redhat.com> References: <20190215115552.23904-1-abologna@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 2/7] conf: Introduce virDomainRNGDefPostParse() X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: quoted-printable Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.14 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.38]); Fri, 15 Feb 2019 11:56:05 +0000 (UTC) Content-Type: text/plain; charset="utf-8" Signed-off-by: Andrea Bolognani --- src/conf/domain_conf.c | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 74bb18d726..99319578f7 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -4842,6 +4842,19 @@ virDomainChrDefPostParse(virDomainChrDefPtr chr, } =20 =20 +static int +virDomainRNGDefPostParse(virDomainRNGDefPtr rng) +{ + /* set default path for virtio-rng "random" backend to /dev/random */ + if (rng->backend =3D=3D VIR_DOMAIN_RNG_BACKEND_RANDOM && + !rng->source.file) { + if (VIR_STRDUP(rng->source.file, "/dev/random") < 0) + return -1; + } + + return 0; +} + static int virDomainVsockDefPostParse(virDomainVsockDefPtr vsock) { @@ -4866,13 +4879,8 @@ virDomainDeviceDefPostParseCommon(virDomainDeviceDef= Ptr dev, if (dev->type =3D=3D VIR_DOMAIN_DEVICE_CHR) return virDomainChrDefPostParse(dev->data.chr, def); =20 - /* set default path for virtio-rng "random" backend to /dev/random */ - if (dev->type =3D=3D VIR_DOMAIN_DEVICE_RNG && - dev->data.rng->backend =3D=3D VIR_DOMAIN_RNG_BACKEND_RANDOM && - !dev->data.rng->source.file) { - if (VIR_STRDUP(dev->data.rng->source.file, "/dev/random") < 0) - return -1; - } + if (dev->type =3D=3D VIR_DOMAIN_DEVICE_RNG) + return virDomainRNGDefPostParse(dev->data.rng); =20 /* verify disk source */ if (dev->type =3D=3D VIR_DOMAIN_DEVICE_DISK) { --=20 2.20.1 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Tue May 7 19:12:17 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) client-ip=209.132.183.28; envelope-from=libvir-list-bounces@redhat.com; helo=mx1.redhat.com; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by mx.zohomail.com with SMTPS id 1550231787179647.4716177605203; Fri, 15 Feb 2019 03:56:27 -0800 (PST) Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 5B861AC612; Fri, 15 Feb 2019 11:56:25 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.20]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 2507A18369; Fri, 15 Feb 2019 11:56:25 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id C6E59181A010; Fri, 15 Feb 2019 11:56:24 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id x1FBu0Fk004401 for ; Fri, 15 Feb 2019 06:56:00 -0500 Received: by smtp.corp.redhat.com (Postfix) id 0EFDD26FA2; Fri, 15 Feb 2019 11:56:00 +0000 (UTC) Received: from kinshicho.brq.redhat.com (unknown [10.43.2.212]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 8885826E71 for ; Fri, 15 Feb 2019 11:55:59 +0000 (UTC) From: Andrea Bolognani To: libvir-list@redhat.com Date: Fri, 15 Feb 2019 12:55:48 +0100 Message-Id: <20190215115552.23904-4-abologna@redhat.com> In-Reply-To: <20190215115552.23904-1-abologna@redhat.com> References: <20190215115552.23904-1-abologna@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 3/7] conf: Introduce virDomainDiskDefPostParse() X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: quoted-printable Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.14 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.28]); Fri, 15 Feb 2019 11:56:26 +0000 (UTC) Content-Type: text/plain; charset="utf-8" Minor tweaks to ensure compliance with our coding style. Signed-off-by: Andrea Bolognani Reviewed-by: J=C3=A1n Tomko --- src/conf/domain_conf.c | 83 ++++++++++++++++++++++++------------------ 1 file changed, 47 insertions(+), 36 deletions(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 99319578f7..b794200e47 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -4855,6 +4855,51 @@ virDomainRNGDefPostParse(virDomainRNGDefPtr rng) return 0; } =20 + +static int +virDomainDiskDefPostParse(virDomainDiskDefPtr disk, + const virDomainDef *def, + virDomainXMLOptionPtr xmlopt) +{ + /* internal snapshots and config files are currently supported + * only with rbd: */ + if (virStorageSourceGetActualType(disk->src) !=3D VIR_STORAGE_TYPE_NET= WORK && + disk->src->protocol !=3D VIR_STORAGE_NET_PROTOCOL_RBD) { + if (disk->src->snapshot) { + virReportError(VIR_ERR_XML_ERROR, "%s", + _(" element is currently supported " + "only with 'rbd' disks")); + return -1; + } + + if (disk->src->configFile) { + virReportError(VIR_ERR_XML_ERROR, "%s", + _(" element is currently supported " + "only with 'rbd' disks")); + return -1; + } + } + + if (disk->src->type =3D=3D VIR_STORAGE_TYPE_NETWORK && + disk->src->protocol =3D=3D VIR_STORAGE_NET_PROTOCOL_ISCSI && + virDomainPostParseCheckISCSIPath(&disk->src->path) < 0) { + return -1; + } + + if (disk->bus !=3D VIR_DOMAIN_DISK_BUS_VIRTIO && + virDomainCheckVirtioOptions(disk->virtio) < 0) { + return -1; + } + + if (disk->info.type =3D=3D VIR_DOMAIN_DEVICE_ADDRESS_TYPE_NONE && + virDomainDiskDefAssignAddress(xmlopt, disk, def) < 0) { + return -1; + } + + return 0; +} + + static int virDomainVsockDefPostParse(virDomainVsockDefPtr vsock) { @@ -4882,42 +4927,8 @@ virDomainDeviceDefPostParseCommon(virDomainDeviceDef= Ptr dev, if (dev->type =3D=3D VIR_DOMAIN_DEVICE_RNG) return virDomainRNGDefPostParse(dev->data.rng); =20 - /* verify disk source */ - if (dev->type =3D=3D VIR_DOMAIN_DEVICE_DISK) { - virDomainDiskDefPtr disk =3D dev->data.disk; - - /* internal snapshots and config files are currently supported - * only with rbd: */ - if (virStorageSourceGetActualType(disk->src) !=3D VIR_STORAGE_TYPE= _NETWORK && - disk->src->protocol !=3D VIR_STORAGE_NET_PROTOCOL_RBD) { - if (disk->src->snapshot) { - virReportError(VIR_ERR_XML_ERROR, "%s", - _(" element is currently supporte= d " - "only with 'rbd' disks")); - return -1; - } - - if (disk->src->configFile) { - virReportError(VIR_ERR_XML_ERROR, "%s", - _(" element is currently supported " - "only with 'rbd' disks")); - return -1; - } - } - - if (disk->src->type =3D=3D VIR_STORAGE_TYPE_NETWORK && - disk->src->protocol =3D=3D VIR_STORAGE_NET_PROTOCOL_ISCSI && - virDomainPostParseCheckISCSIPath(&disk->src->path) < 0) - return -1; - - if (disk->bus !=3D VIR_DOMAIN_DISK_BUS_VIRTIO && - virDomainCheckVirtioOptions(disk->virtio) < 0) - return -1; - - if (disk->info.type =3D=3D VIR_DOMAIN_DEVICE_ADDRESS_TYPE_NONE && - virDomainDiskDefAssignAddress(xmlopt, disk, def) < 0) - return -1; - } + if (dev->type =3D=3D VIR_DOMAIN_DEVICE_DISK) + return virDomainDiskDefPostParse(dev->data.disk, def, xmlopt); =20 if (dev->type =3D=3D VIR_DOMAIN_DEVICE_VIDEO) { virDomainVideoDefPtr video =3D dev->data.video; --=20 2.20.1 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Tue May 7 19:12:17 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) client-ip=209.132.183.28; envelope-from=libvir-list-bounces@redhat.com; helo=mx1.redhat.com; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by mx.zohomail.com with SMTPS id 1550231787466252.89714756058265; Fri, 15 Feb 2019 03:56:27 -0800 (PST) Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 44E248E69A; Fri, 15 Feb 2019 11:56:25 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.20]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 15ADD5F9B7; Fri, 15 Feb 2019 11:56:25 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id C5DC8181A00D; Fri, 15 Feb 2019 11:56:24 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id x1FBu0pr004409 for ; Fri, 15 Feb 2019 06:56:00 -0500 Received: by smtp.corp.redhat.com (Postfix) id D75EC26FA2; Fri, 15 Feb 2019 11:56:00 +0000 (UTC) Received: from kinshicho.brq.redhat.com (unknown [10.43.2.212]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 5CB3326E71 for ; Fri, 15 Feb 2019 11:56:00 +0000 (UTC) From: Andrea Bolognani To: libvir-list@redhat.com Date: Fri, 15 Feb 2019 12:55:49 +0100 Message-Id: <20190215115552.23904-5-abologna@redhat.com> In-Reply-To: <20190215115552.23904-1-abologna@redhat.com> References: <20190215115552.23904-1-abologna@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 4/7] conf: Introduce virDomainVideoDefPostParse() X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: quoted-printable Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.25]); Fri, 15 Feb 2019 11:56:26 +0000 (UTC) Content-Type: text/plain; charset="utf-8" Signed-off-by: Andrea Bolognani Reviewed-by: J=C3=A1n Tomko --- src/conf/domain_conf.c | 30 +++++++++++++++++++----------- 1 file changed, 19 insertions(+), 11 deletions(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index b794200e47..4cfdfb230e 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -4900,6 +4900,23 @@ virDomainDiskDefPostParse(virDomainDiskDefPtr disk, } =20 =20 +static int +virDomainVideoDefPostParse(virDomainVideoDefPtr video, + const virDomainDef *def) +{ + /* Fill out (V)RAM if the driver-specific callback did not do so */ + if (video->ram =3D=3D 0 && video->type =3D=3D VIR_DOMAIN_VIDEO_TYPE_QX= L) + video->ram =3D virDomainVideoDefaultRAM(def, video->type); + if (video->vram =3D=3D 0) + video->vram =3D virDomainVideoDefaultRAM(def, video->type); + + video->ram =3D VIR_ROUND_UP_POWER_OF_TWO(video->ram); + video->vram =3D VIR_ROUND_UP_POWER_OF_TWO(video->vram); + + return 0; +} + + static int virDomainVsockDefPostParse(virDomainVsockDefPtr vsock) { @@ -4930,17 +4947,8 @@ virDomainDeviceDefPostParseCommon(virDomainDeviceDef= Ptr dev, if (dev->type =3D=3D VIR_DOMAIN_DEVICE_DISK) return virDomainDiskDefPostParse(dev->data.disk, def, xmlopt); =20 - if (dev->type =3D=3D VIR_DOMAIN_DEVICE_VIDEO) { - virDomainVideoDefPtr video =3D dev->data.video; - /* Fill out (V)RAM if the driver-specific callback did not do so */ - if (video->ram =3D=3D 0 && video->type =3D=3D VIR_DOMAIN_VIDEO_TYP= E_QXL) - video->ram =3D virDomainVideoDefaultRAM(def, video->type); - if (video->vram =3D=3D 0) - video->vram =3D virDomainVideoDefaultRAM(def, video->type); - - video->ram =3D VIR_ROUND_UP_POWER_OF_TWO(video->ram); - video->vram =3D VIR_ROUND_UP_POWER_OF_TWO(video->vram); - } + if (dev->type =3D=3D VIR_DOMAIN_DEVICE_VIDEO) + return virDomainVideoDefPostParse(dev->data.video, def); =20 if (dev->type =3D=3D VIR_DOMAIN_DEVICE_HOSTDEV && virDomainHostdevDefPostParse(dev->data.hostdev, def, xmlopt) < 0) --=20 2.20.1 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Tue May 7 19:12:17 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) client-ip=209.132.183.28; envelope-from=libvir-list-bounces@redhat.com; helo=mx1.redhat.com; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by mx.zohomail.com with SMTPS id 1550231795575795.8091534937985; Fri, 15 Feb 2019 03:56:35 -0800 (PST) Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 6F714315D5A; Fri, 15 Feb 2019 11:56:33 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 1F8FD60C6B; Fri, 15 Feb 2019 11:56:33 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id B938A3F606; Fri, 15 Feb 2019 11:56:32 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id x1FBu1SX004417 for ; Fri, 15 Feb 2019 06:56:01 -0500 Received: by smtp.corp.redhat.com (Postfix) id AF31D26E59; Fri, 15 Feb 2019 11:56:01 +0000 (UTC) Received: from kinshicho.brq.redhat.com (unknown [10.43.2.212]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 34F8426FB6 for ; Fri, 15 Feb 2019 11:56:01 +0000 (UTC) From: Andrea Bolognani To: libvir-list@redhat.com Date: Fri, 15 Feb 2019 12:55:50 +0100 Message-Id: <20190215115552.23904-6-abologna@redhat.com> In-Reply-To: <20190215115552.23904-1-abologna@redhat.com> References: <20190215115552.23904-1-abologna@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 5/7] conf: Introduce virDomainControllerDefPostParse() X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: quoted-printable Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.29]); Fri, 15 Feb 2019 11:56:34 +0000 (UTC) Content-Type: text/plain; charset="utf-8" Signed-off-by: Andrea Bolognani Reviewed-by: J=C3=A1n Tomko --- src/conf/domain_conf.c | 30 ++++++++++++++++++------------ 1 file changed, 18 insertions(+), 12 deletions(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 4cfdfb230e..872cb3352b 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -4917,6 +4917,22 @@ virDomainVideoDefPostParse(virDomainVideoDefPtr vide= o, } =20 =20 +static int +virDomainControllerDefPostParse(virDomainControllerDefPtr cdev) +{ + if (cdev->iothread && + cdev->model !=3D VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO_SCSI) { + virReportError(VIR_ERR_XML_ERROR, + _("'iothread' attribute only supported for " + "controller model '%s'"), + virDomainControllerModelSCSITypeToString(VIR_DOMAIN= _CONTROLLER_MODEL_SCSI_VIRTIO_SCSI)); + return -1; + } + + return 0; +} + + static int virDomainVsockDefPostParse(virDomainVsockDefPtr vsock) { @@ -4954,18 +4970,8 @@ virDomainDeviceDefPostParseCommon(virDomainDeviceDef= Ptr dev, virDomainHostdevDefPostParse(dev->data.hostdev, def, xmlopt) < 0) return -1; =20 - if (dev->type =3D=3D VIR_DOMAIN_DEVICE_CONTROLLER) { - virDomainControllerDefPtr cdev =3D dev->data.controller; - - if (cdev->iothread && - cdev->model !=3D VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO_SCSI)= { - virReportError(VIR_ERR_XML_ERROR, - _("'iothread' attribute only supported for " - "controller model '%s'"), - virDomainControllerModelSCSITypeToString(VIR_DO= MAIN_CONTROLLER_MODEL_SCSI_VIRTIO_SCSI)); - return -1; - } - } + if (dev->type =3D=3D VIR_DOMAIN_DEVICE_CONTROLLER) + return virDomainControllerDefPostParse(dev->data.controller); =20 if (dev->type =3D=3D VIR_DOMAIN_DEVICE_NET) { virDomainNetDefPtr net =3D dev->data.net; --=20 2.20.1 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Tue May 7 19:12:17 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) client-ip=209.132.183.28; envelope-from=libvir-list-bounces@redhat.com; helo=mx1.redhat.com; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by mx.zohomail.com with SMTPS id 1550231792938190.90532911180742; Fri, 15 Feb 2019 03:56:32 -0800 (PST) Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 8796FC794E; Fri, 15 Feb 2019 11:56:29 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 545D05F9BE; Fri, 15 Feb 2019 11:56:29 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id 14AB63F603; Fri, 15 Feb 2019 11:56:29 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id x1FBu2Xk004428 for ; Fri, 15 Feb 2019 06:56:02 -0500 Received: by smtp.corp.redhat.com (Postfix) id 84B9826FD9; Fri, 15 Feb 2019 11:56:02 +0000 (UTC) Received: from kinshicho.brq.redhat.com (unknown [10.43.2.212]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 07D4C26E59 for ; Fri, 15 Feb 2019 11:56:01 +0000 (UTC) From: Andrea Bolognani To: libvir-list@redhat.com Date: Fri, 15 Feb 2019 12:55:51 +0100 Message-Id: <20190215115552.23904-7-abologna@redhat.com> In-Reply-To: <20190215115552.23904-1-abologna@redhat.com> References: <20190215115552.23904-1-abologna@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 6/7] conf: Introduce virDomainNetDefPostParse() X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: quoted-printable Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.26]); Fri, 15 Feb 2019 11:56:30 +0000 (UTC) Content-Type: text/plain; charset="utf-8" Minor tweaks to ensure compliance with our coding style. Signed-off-by: Andrea Bolognani Reviewed-by: J=C3=A1n Tomko --- src/conf/domain_conf.c | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 872cb3352b..7f66fa27ff 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -4933,6 +4933,18 @@ virDomainControllerDefPostParse(virDomainControllerD= efPtr cdev) } =20 =20 +static int +virDomainNetDefPostParse(virDomainNetDefPtr net) +{ + if (!virDomainNetIsVirtioModel(net) && + virDomainCheckVirtioOptions(net->virtio) < 0) { + return -1; + } + + return 0; +} + + static int virDomainVsockDefPostParse(virDomainVsockDefPtr vsock) { @@ -4973,12 +4985,8 @@ virDomainDeviceDefPostParseCommon(virDomainDeviceDef= Ptr dev, if (dev->type =3D=3D VIR_DOMAIN_DEVICE_CONTROLLER) return virDomainControllerDefPostParse(dev->data.controller); =20 - if (dev->type =3D=3D VIR_DOMAIN_DEVICE_NET) { - virDomainNetDefPtr net =3D dev->data.net; - if (!virDomainNetIsVirtioModel(net) && - virDomainCheckVirtioOptions(net->virtio) < 0) - return -1; - } + if (dev->type =3D=3D VIR_DOMAIN_DEVICE_NET) + return virDomainNetDefPostParse(dev->data.net); =20 if (dev->type =3D=3D VIR_DOMAIN_DEVICE_VSOCK && virDomainVsockDefPostParse(dev->data.vsock) < 0) --=20 2.20.1 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Tue May 7 19:12:17 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) client-ip=209.132.183.28; envelope-from=libvir-list-bounces@redhat.com; helo=mx1.redhat.com; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by mx.zohomail.com with SMTPS id 1550231799986771.6326494321427; Fri, 15 Feb 2019 03:56:39 -0800 (PST) Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.phx2.redhat.com [10.5.11.22]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 5B94E315D3C; Fri, 15 Feb 2019 11:56:37 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.20]) by smtp.corp.redhat.com (Postfix) with ESMTPS id F0DAB102493E; Fri, 15 Feb 2019 11:56:36 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id 9628E181A12B; Fri, 15 Feb 2019 11:56:36 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id x1FBu37M004440 for ; Fri, 15 Feb 2019 06:56:03 -0500 Received: by smtp.corp.redhat.com (Postfix) id 5DFC826FC9; Fri, 15 Feb 2019 11:56:03 +0000 (UTC) Received: from kinshicho.brq.redhat.com (unknown [10.43.2.212]) by smtp.corp.redhat.com (Postfix) with ESMTPS id D3E8726FA2 for ; Fri, 15 Feb 2019 11:56:02 +0000 (UTC) From: Andrea Bolognani To: libvir-list@redhat.com Date: Fri, 15 Feb 2019 12:55:52 +0100 Message-Id: <20190215115552.23904-8-abologna@redhat.com> In-Reply-To: <20190215115552.23904-1-abologna@redhat.com> References: <20190215115552.23904-1-abologna@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 7/7] conf: Rework virDomainDeviceDefPostParseCommon() X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: quoted-printable Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.84 on 10.5.11.22 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.29]); Fri, 15 Feb 2019 11:56:38 +0000 (UTC) Content-Type: text/plain; charset="utf-8" Now that we've moved all the actual code into helper functions, we can turn it into a switch statement. Signed-off-by: Andrea Bolognani Reviewed-by: J=C3=A1n Tomko --- src/conf/domain_conf.c | 77 +++++++++++++++++++++++++++++++----------- 1 file changed, 58 insertions(+), 19 deletions(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 7f66fa27ff..ffdc027983 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -4966,33 +4966,72 @@ virDomainDeviceDefPostParseCommon(virDomainDeviceDe= fPtr dev, unsigned int parseFlags ATTRIBUTE_UNUSED, virDomainXMLOptionPtr xmlopt) { - if (dev->type =3D=3D VIR_DOMAIN_DEVICE_CHR) - return virDomainChrDefPostParse(dev->data.chr, def); + int ret =3D -1; =20 - if (dev->type =3D=3D VIR_DOMAIN_DEVICE_RNG) - return virDomainRNGDefPostParse(dev->data.rng); + switch ((virDomainDeviceType)dev->type) { + case VIR_DOMAIN_DEVICE_CHR: + ret =3D virDomainChrDefPostParse(dev->data.chr, def); + break; =20 - if (dev->type =3D=3D VIR_DOMAIN_DEVICE_DISK) - return virDomainDiskDefPostParse(dev->data.disk, def, xmlopt); + case VIR_DOMAIN_DEVICE_RNG: + ret =3D virDomainRNGDefPostParse(dev->data.rng); + break; =20 - if (dev->type =3D=3D VIR_DOMAIN_DEVICE_VIDEO) - return virDomainVideoDefPostParse(dev->data.video, def); + case VIR_DOMAIN_DEVICE_DISK: + ret =3D virDomainDiskDefPostParse(dev->data.disk, def, xmlopt); + break; =20 - if (dev->type =3D=3D VIR_DOMAIN_DEVICE_HOSTDEV && - virDomainHostdevDefPostParse(dev->data.hostdev, def, xmlopt) < 0) - return -1; + case VIR_DOMAIN_DEVICE_VIDEO: + ret =3D virDomainVideoDefPostParse(dev->data.video, def); + break; + + case VIR_DOMAIN_DEVICE_HOSTDEV: + ret =3D virDomainHostdevDefPostParse(dev->data.hostdev, def, xmlop= t); + break; =20 - if (dev->type =3D=3D VIR_DOMAIN_DEVICE_CONTROLLER) - return virDomainControllerDefPostParse(dev->data.controller); + case VIR_DOMAIN_DEVICE_CONTROLLER: + ret =3D virDomainControllerDefPostParse(dev->data.controller); + break; =20 - if (dev->type =3D=3D VIR_DOMAIN_DEVICE_NET) - return virDomainNetDefPostParse(dev->data.net); + case VIR_DOMAIN_DEVICE_NET: + ret =3D virDomainNetDefPostParse(dev->data.net); + break; =20 - if (dev->type =3D=3D VIR_DOMAIN_DEVICE_VSOCK && - virDomainVsockDefPostParse(dev->data.vsock) < 0) - return -1; + case VIR_DOMAIN_DEVICE_VSOCK: + ret =3D virDomainVsockDefPostParse(dev->data.vsock); + break; =20 - return 0; + case VIR_DOMAIN_DEVICE_LEASE: + case VIR_DOMAIN_DEVICE_FS: + case VIR_DOMAIN_DEVICE_INPUT: + case VIR_DOMAIN_DEVICE_SOUND: + case VIR_DOMAIN_DEVICE_WATCHDOG: + case VIR_DOMAIN_DEVICE_GRAPHICS: + case VIR_DOMAIN_DEVICE_HUB: + case VIR_DOMAIN_DEVICE_REDIRDEV: + case VIR_DOMAIN_DEVICE_SMARTCARD: + case VIR_DOMAIN_DEVICE_MEMBALLOON: + case VIR_DOMAIN_DEVICE_NVRAM: + case VIR_DOMAIN_DEVICE_SHMEM: + case VIR_DOMAIN_DEVICE_TPM: + case VIR_DOMAIN_DEVICE_PANIC: + case VIR_DOMAIN_DEVICE_MEMORY: + case VIR_DOMAIN_DEVICE_IOMMU: + ret =3D 0; + break; + + case VIR_DOMAIN_DEVICE_NONE: + virReportError(VIR_ERR_INTERNAL_ERROR, "%s", + _("unexpected VIR_DOMAIN_DEVICE_NONE")); + break; + + case VIR_DOMAIN_DEVICE_LAST: + default: + virReportEnumRangeError(virDomainDeviceType, dev->type); + break; + } + + return ret; } =20 =20 --=20 2.20.1 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list