From nobody Fri May 3 09:44:16 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 1551798486534672.530848423599; Tue, 5 Mar 2019 07:08:06 -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 A89E5BDFA; Tue, 5 Mar 2019 15:08:02 +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 7BC8161B68; Tue, 5 Mar 2019 15:08:02 +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 25E333FB12; Tue, 5 Mar 2019 15:08:02 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.phx2.redhat.com [10.5.11.15]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id x25F7k7X019552 for ; Tue, 5 Mar 2019 10:07:46 -0500 Received: by smtp.corp.redhat.com (Postfix) id 6A9ED5D782; Tue, 5 Mar 2019 15:07:46 +0000 (UTC) Received: from kinshicho.brq.redhat.com (unknown [10.43.2.212]) by smtp.corp.redhat.com (Postfix) with ESMTPS id E223E5D71A for ; Tue, 5 Mar 2019 15:07:45 +0000 (UTC) From: Andrea Bolognani To: libvir-list@redhat.com Date: Tue, 5 Mar 2019 16:07:39 +0100 Message-Id: <20190305150740.27408-2-abologna@redhat.com> In-Reply-To: <20190305150740.27408-1-abologna@redhat.com> References: <20190305150740.27408-1-abologna@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.15 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 1/2] conf: Rename VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO_SCSI 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.29]); Tue, 05 Mar 2019 15:08:03 +0000 (UTC) Content-Type: text/plain; charset="utf-8" While the string associated with the enum value is virtio-scsi, having the string "SCSI" show up twice in the name of the enum value is unnecessary and needlessly deviates from the by now well established practice of having MODEL_(VIRTIO|VIRTIO_TRANSITIONAL|VIRTIO_NON_TRANSITIONAL) enum values for VirtIO devices. Signed-off-by: Andrea Bolognani --- src/conf/domain_conf.c | 2 +- src/conf/domain_conf.h | 2 +- src/qemu/qemu_command.c | 2 +- src/qemu/qemu_domain.c | 6 +++--- src/qemu/qemu_domain_address.c | 6 +++--- src/qemu/qemu_process.c | 2 +- src/vbox/vbox_common.c | 2 +- src/vz/vz_utils.c | 4 ++-- 8 files changed, 13 insertions(+), 13 deletions(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index d84cc2d482..0c0e422889 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -4938,7 +4938,7 @@ static int virDomainControllerDefPostParse(virDomainControllerDefPtr cdev) { if (cdev->iothread && - cdev->model !=3D VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO_SCSI && + cdev->model !=3D VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO && cdev->model !=3D VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO_TRANSITIO= NAL && cdev->model !=3D VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO_NON_TRANS= ITIONAL) { virReportError(VIR_ERR_XML_ERROR, "%s", diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h index c2dcc87ba1..860014d955 100644 --- a/src/conf/domain_conf.h +++ b/src/conf/domain_conf.h @@ -754,8 +754,8 @@ typedef enum { VIR_DOMAIN_CONTROLLER_MODEL_SCSI_LSISAS1068, VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VMPVSCSI, VIR_DOMAIN_CONTROLLER_MODEL_SCSI_IBMVSCSI, - VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO_SCSI, VIR_DOMAIN_CONTROLLER_MODEL_SCSI_LSISAS1078, + VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO, VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO_TRANSITIONAL, VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO_NON_TRANSITIONAL, =20 diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c index 853b0932b0..dee564905c 100644 --- a/src/qemu/qemu_command.c +++ b/src/qemu/qemu_command.c @@ -2999,7 +2999,7 @@ qemuBuildControllerDevStr(const virDomainDef *domainD= ef, switch ((virDomainControllerType)def->type) { case VIR_DOMAIN_CONTROLLER_TYPE_SCSI: switch ((virDomainControllerModelSCSI) def->model) { - case VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO_SCSI: + case VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO: case VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO_TRANSITIONAL: case VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO_NON_TRANSITIONAL: if (qemuBuildVirtioDevStr(&buf, "virtio-scsi", qemuCaps, diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index 1487268a89..75307327a2 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -5087,7 +5087,7 @@ static int qemuDomainDeviceDefValidateControllerAttributes(const virDomainControllerD= ef *controller) { if (!(controller->type =3D=3D VIR_DOMAIN_CONTROLLER_TYPE_SCSI && - (controller->model =3D=3D VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTI= O_SCSI || + (controller->model =3D=3D VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTI= O || controller->model =3D=3D VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTI= O_TRANSITIONAL || controller->model =3D=3D VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTI= O_NON_TRANSITIONAL))) { if (controller->queues) { @@ -5142,7 +5142,7 @@ qemuDomainCheckSCSIControllerModel(virQEMUCapsPtr qem= uCaps, return false; } break; - case VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO_SCSI: + case VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO: case VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO_TRANSITIONAL: case VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO_NON_TRANSITIONAL: if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_VIRTIO_SCSI)) { @@ -5259,7 +5259,7 @@ qemuDomainDeviceDefValidateControllerSCSI(const virDo= mainControllerDef *controll const virDomainDef *def) { switch ((virDomainControllerModelSCSI) controller->model) { - case VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO_SCSI: + case VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO: case VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO_TRANSITIONAL: case VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO_NON_TRANSITIONAL: if (!qemuDomainCheckSCSIControllerIOThreads(controller, def)) diff --git a/src/qemu/qemu_domain_address.c b/src/qemu/qemu_domain_address.c index 4740536d82..05d059582e 100644 --- a/src/qemu/qemu_domain_address.c +++ b/src/qemu/qemu_domain_address.c @@ -58,11 +58,11 @@ qemuDomainGetSCSIControllerModel(const virDomainDef *de= f, if (qemuDomainIsPSeries(def)) return VIR_DOMAIN_CONTROLLER_MODEL_SCSI_IBMVSCSI; else if (ARCH_IS_S390(def->os.arch)) - return VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO_SCSI; + return VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO; else if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_SCSI_LSI)) return VIR_DOMAIN_CONTROLLER_MODEL_SCSI_LSILOGIC; else if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_VIRTIO_SCSI)) - return VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO_SCSI; + return VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO; =20 virReportError(VIR_ERR_INTERNAL_ERROR, _("Unable to determine model for SCSI controller idx=3D= %d"), @@ -647,7 +647,7 @@ qemuDomainDeviceCalculatePCIConnectFlags(virDomainDevic= eDefPtr dev, case VIR_DOMAIN_CONTROLLER_MODEL_SCSI_DEFAULT: return 0; =20 - case VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO_SCSI: + case VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO: case VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO_NON_TRANSITIONAL: return virtioFlags; =20 diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c index 68c670d3f2..99ed47bb2a 100644 --- a/src/qemu/qemu_process.c +++ b/src/qemu/qemu_process.c @@ -5193,7 +5193,7 @@ qemuProcessStartValidateIOThreads(virDomainObjPtr vm, virDomainControllerDefPtr cont =3D vm->def->controllers[i]; =20 if (cont->type =3D=3D VIR_DOMAIN_CONTROLLER_TYPE_SCSI && - cont->model =3D=3D VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO_SCS= I && + cont->model =3D=3D VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO && cont->iothread > 0 && !virQEMUCapsGet(qemuCaps, QEMU_CAPS_VIRTIO_SCSI_IOTHREAD)) { virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", diff --git a/src/vbox/vbox_common.c b/src/vbox/vbox_common.c index 0a27deeaf8..9d68cd7119 100644 --- a/src/vbox/vbox_common.c +++ b/src/vbox/vbox_common.c @@ -405,7 +405,7 @@ vboxSetStorageController(virDomainControllerDefPtr cont= roller, break; case VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VMPVSCSI: case VIR_DOMAIN_CONTROLLER_MODEL_SCSI_IBMVSCSI: - case VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO_SCSI: + case VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO: case VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO_TRANSITIONAL: case VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO_NON_TRANSITIONAL: case VIR_DOMAIN_CONTROLLER_MODEL_SCSI_LSISAS1078: diff --git a/src/vz/vz_utils.c b/src/vz/vz_utils.c index 13f5deeaa5..7766d341f2 100644 --- a/src/vz/vz_utils.c +++ b/src/vz/vz_utils.c @@ -144,7 +144,7 @@ vzInitCaps(unsigned long vzVersion, vzCapabilitiesPtr v= zCaps) vzCaps->vmDiskFormat =3D VIR_STORAGE_FILE_QCOW2; vzCaps->diskBuses =3D vz7DiskBuses; vzCaps->controllerTypes =3D vz7ControllerTypes; - vzCaps->scsiControllerModel =3D VIR_DOMAIN_CONTROLLER_MODEL_SCSI_V= IRTIO_SCSI; + vzCaps->scsiControllerModel =3D VIR_DOMAIN_CONTROLLER_MODEL_SCSI_V= IRTIO; } } =20 @@ -471,7 +471,7 @@ int vzGetDefaultSCSIModel(vzDriverPtr driver, PRL_CLUSTERED_DEVICE_SUBTYPE *scsiModel) { switch ((int)driver->vzCaps.scsiControllerModel) { - case VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO_SCSI: + case VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO: *scsiModel =3D PCD_VIRTIO_SCSI; break; case VIR_DOMAIN_CONTROLLER_MODEL_SCSI_BUSLOGIC: --=20 2.20.1 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri May 3 09:44:16 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 1551798471947747.1366530749793; Tue, 5 Mar 2019 07:07:51 -0800 (PST) Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id C0F023092647; Tue, 5 Mar 2019 15:07:49 +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 8E18560A9A; Tue, 5 Mar 2019 15:07:49 +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 A279D41F3D; Tue, 5 Mar 2019 15:07:48 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.phx2.redhat.com [10.5.11.15]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id x25F7lN3019559 for ; Tue, 5 Mar 2019 10:07:47 -0500 Received: by smtp.corp.redhat.com (Postfix) id 42E265D71A; Tue, 5 Mar 2019 15:07:47 +0000 (UTC) Received: from kinshicho.brq.redhat.com (unknown [10.43.2.212]) by smtp.corp.redhat.com (Postfix) with ESMTPS id BB4C85D782 for ; Tue, 5 Mar 2019 15:07:46 +0000 (UTC) From: Andrea Bolognani To: libvir-list@redhat.com Date: Tue, 5 Mar 2019 16:07:40 +0100 Message-Id: <20190305150740.27408-3-abologna@redhat.com> In-Reply-To: <20190305150740.27408-1-abologna@redhat.com> References: <20190305150740.27408-1-abologna@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.15 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 2/2] conf: Accept model=virtio for SCSI controllers X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: quoted-printable Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.43]); Tue, 05 Mar 2019 15:07:50 +0000 (UTC) Content-Type: text/plain; charset="utf-8" At the moment, all VirtIO devices support model=3Dvirtio except for SCSI controllers where model=3Dvirtio-scsi must be used instead: get rid of this inconsistency by providing an alias at the parser level, so that existing code keeps working but using the same values across the board is also optionally possible. Tweak one of the test cases to show that the new value is accepted transparently, without altering any of the output files in the process. Signed-off-by: Andrea Bolognani --- docs/schemas/domaincommon.rng | 1 + src/conf/domain_conf.c | 16 ++++++++++------ .../qemuxml2argvdata/controller-virtio-scsi.xml | 2 +- 3 files changed, 12 insertions(+), 7 deletions(-) diff --git a/docs/schemas/domaincommon.rng b/docs/schemas/domaincommon.rng index 80f9f84f70..8981eda4b7 100644 --- a/docs/schemas/domaincommon.rng +++ b/docs/schemas/domaincommon.rng @@ -2156,6 +2156,7 @@ ibmvscsi virtio-scsi lsisas1078 + virtio virtio-transitional virtio-non-transitional diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 0c0e422889..cde10598f9 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -10320,16 +10320,20 @@ static int virDomainControllerModelTypeFromString(const virDomainControllerDef *def, const char *model) { - if (def->type =3D=3D VIR_DOMAIN_CONTROLLER_TYPE_SCSI) - return virDomainControllerModelSCSITypeFromString(model); - else if (def->type =3D=3D VIR_DOMAIN_CONTROLLER_TYPE_USB) + if (def->type =3D=3D VIR_DOMAIN_CONTROLLER_TYPE_SCSI) { + if (STREQ_NULLABLE(model, "virtio")) + return VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO; + else + return virDomainControllerModelSCSITypeFromString(model); + } else if (def->type =3D=3D VIR_DOMAIN_CONTROLLER_TYPE_USB) { return virDomainControllerModelUSBTypeFromString(model); - else if (def->type =3D=3D VIR_DOMAIN_CONTROLLER_TYPE_PCI) + } else if (def->type =3D=3D VIR_DOMAIN_CONTROLLER_TYPE_PCI) { return virDomainControllerModelPCITypeFromString(model); - else if (def->type =3D=3D VIR_DOMAIN_CONTROLLER_TYPE_IDE) + } else if (def->type =3D=3D VIR_DOMAIN_CONTROLLER_TYPE_IDE) { return virDomainControllerModelIDETypeFromString(model); - else if (def->type =3D=3D VIR_DOMAIN_CONTROLLER_TYPE_VIRTIO_SERIAL) + } else if (def->type =3D=3D VIR_DOMAIN_CONTROLLER_TYPE_VIRTIO_SERIAL) { return virDomainControllerModelVirtioSerialTypeFromString(model); + } =20 return -1; } diff --git a/tests/qemuxml2argvdata/controller-virtio-scsi.xml b/tests/qemu= xml2argvdata/controller-virtio-scsi.xml index 844e4ad397..861121821c 100644 --- a/tests/qemuxml2argvdata/controller-virtio-scsi.xml +++ b/tests/qemuxml2argvdata/controller-virtio-scsi.xml @@ -47,7 +47,7 @@ - + --=20 2.20.1 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list