From nobody Wed May 1 17:53:35 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 1533650135863960.1789945797818; Tue, 7 Aug 2018 06:55:35 -0700 (PDT) Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 9EB8F81102; Tue, 7 Aug 2018 13:55: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 2A454183F7; Tue, 7 Aug 2018 13:55: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 A3E054A460; Tue, 7 Aug 2018 13:55:32 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.rdu2.redhat.com [10.11.54.4]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id w77DtV0s006378 for ; Tue, 7 Aug 2018 09:55:31 -0400 Received: by smtp.corp.redhat.com (Postfix) id 05A1C2026D76; Tue, 7 Aug 2018 13:55:31 +0000 (UTC) Received: from antique-work.brq.redhat.com (unknown [10.43.2.152]) by smtp.corp.redhat.com (Postfix) with ESMTP id 981A72026D66 for ; Tue, 7 Aug 2018 13:55:30 +0000 (UTC) From: Pavel Hrdina To: libvir-list@redhat.com Date: Tue, 7 Aug 2018 15:55:20 +0200 Message-Id: <4b804ecfd59960219062f7c0f58a50c25b665390.1533650092.git.phrdina@redhat.com> In-Reply-To: References: In-Reply-To: References: X-Scanned-By: MIMEDefang 2.78 on 10.11.54.4 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 1/9] docs: fix iscsi-direct XML example 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: , MIME-Version: 1.0 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.28]); Tue, 07 Aug 2018 13:55:34 +0000 (UTC) X-ZohoMail: RDMRC_0 RSF_0 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" The element is part of element. Signed-off-by: Pavel Hrdina Reviewed-by: J=EF=BF=BDn Tomko --- docs/storage.html.in | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/storage.html.in b/docs/storage.html.in index 744819d99d..e9e6ec7423 100644 --- a/docs/storage.html.in +++ b/docs/storage.html.in @@ -447,10 +447,10 @@ <source> <host name=3D"iscsi.example.com"/> <device path=3D"iqn.2013-06.com.example:iscsi-pool"/> + <initiator> + <iqn name=3D"iqn.2013-06.com.example:iscsi-initiator"/> + </initiator> </source> - <initiator> - <iqn name=3D"iqn.2013-06.com.example:iscsi-initiator"/> - </initiator> </pool> =20

Valid pool format types

--=20 2.17.1 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Wed May 1 17:53:35 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 1533650141546897.9164896637852; Tue, 7 Aug 2018 06:55:41 -0700 (PDT) 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 1F755308214A; Tue, 7 Aug 2018 13:55:39 +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 CDBEA5DD65; Tue, 7 Aug 2018 13:55:38 +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 6C6D24A46D; Tue, 7 Aug 2018 13:55:38 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.rdu2.redhat.com [10.11.54.4]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id w77DtV5k006383 for ; Tue, 7 Aug 2018 09:55:31 -0400 Received: by smtp.corp.redhat.com (Postfix) id A98EF2026D76; Tue, 7 Aug 2018 13:55:31 +0000 (UTC) Received: from antique-work.brq.redhat.com (unknown [10.43.2.152]) by smtp.corp.redhat.com (Postfix) with ESMTP id 44CD32026D66 for ; Tue, 7 Aug 2018 13:55:31 +0000 (UTC) From: Pavel Hrdina To: libvir-list@redhat.com Date: Tue, 7 Aug 2018 15:55:21 +0200 Message-Id: <3f1b43e432576fac151892cf33ebc046b536ea53.1533650092.git.phrdina@redhat.com> In-Reply-To: References: In-Reply-To: References: X-Scanned-By: MIMEDefang 2.78 on 10.11.54.4 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 2/9] conf: properly translate iscsi-direct storage pool 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: , MIME-Version: 1.0 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.42]); Tue, 07 Aug 2018 13:55:39 +0000 (UTC) X-ZohoMail: RDMRC_0 RSF_0 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" We cannot simply used the same code as for iscsi storage pool because the default mode is 'host' which is not possible with iscsi-direct. Signed-off-by: Pavel Hrdina Reviewed-by: J=EF=BF=BDn Tomko --- src/conf/domain_conf.c | 61 +++++++++++++++++++++++++++++------------- 1 file changed, 43 insertions(+), 18 deletions(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 7dcbe8a20b..d1504610a1 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -30143,6 +30143,34 @@ virDomainDiskTranslateSourcePoolAuth(virDomainDisk= DefPtr def, } =20 =20 +static int +virDomainDiskTranslateISCSIDircect(virDomainDiskDefPtr def, + virStoragePoolDefPtr pooldef) +{ + def->src->srcpool->actualtype =3D VIR_STORAGE_TYPE_NETWORK; + def->src->protocol =3D VIR_STORAGE_NET_PROTOCOL_ISCSI; + + if (virDomainDiskTranslateSourcePoolAuth(def, + &pooldef->source) < 0) + return -1; + + /* Source pool may not fill in the secrettype field, + * so we need to do so here + */ + if (def->src->auth && !def->src->auth->secrettype) { + const char *secrettype =3D + virSecretUsageTypeToString(VIR_SECRET_USAGE_TYPE_ISCSI); + if (VIR_STRDUP(def->src->auth->secrettype, secrettype) < 0) + return -1; + } + + if (virDomainDiskAddISCSIPoolSourceHost(def, pooldef) < 0) + return -1; + + return 0; +} + + int virDomainDiskTranslateSourcePool(virDomainDiskDefPtr def) { @@ -30253,6 +30281,20 @@ virDomainDiskTranslateSourcePool(virDomainDiskDefP= tr def) break; =20 case VIR_STORAGE_POOL_ISCSI_DIRECT: + if (def->startupPolicy) { + virReportError(VIR_ERR_XML_ERROR, "%s", + _("'startupPolicy' is only valid for " + "'file' type volume")); + goto cleanup; + } + + def->src->srcpool->mode =3D VIR_STORAGE_SOURCE_POOL_MODE_DIRECT; + + if (virDomainDiskTranslateISCSIDircect(def, pooldef) < 0) + goto cleanup; + + break; + case VIR_STORAGE_POOL_ISCSI: if (def->startupPolicy) { virReportError(VIR_ERR_XML_ERROR, "%s", @@ -30273,24 +30315,7 @@ virDomainDiskTranslateSourcePool(virDomainDiskDefP= tr def) break; =20 case VIR_STORAGE_SOURCE_POOL_MODE_DIRECT: - def->src->srcpool->actualtype =3D VIR_STORAGE_TYPE_NETWORK; - def->src->protocol =3D VIR_STORAGE_NET_PROTOCOL_ISCSI; - - if (virDomainDiskTranslateSourcePoolAuth(def, - &pooldef->source) < 0) - goto cleanup; - - /* Source pool may not fill in the secrettype field, - * so we need to do so here - */ - if (def->src->auth && !def->src->auth->secrettype) { - const char *secrettype =3D - virSecretUsageTypeToString(VIR_SECRET_USAGE_TYPE_ISCSI); - if (VIR_STRDUP(def->src->auth->secrettype, secrettype) < 0) - goto cleanup; - } - - if (virDomainDiskAddISCSIPoolSourceHost(def, pooldef) < 0) + if (virDomainDiskTranslateISCSIDircect(def, pooldef) < 0) goto cleanup; break; } --=20 2.17.1 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Wed May 1 17:53:35 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 1533650137363315.4243795905153; Tue, 7 Aug 2018 06:55:37 -0700 (PDT) Received: from smtp.corp.redhat.com (int-mx11.intmail.prod.int.phx2.redhat.com [10.5.11.26]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 0B883307D85A; Tue, 7 Aug 2018 13:55:35 +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 CBE73300193C; Tue, 7 Aug 2018 13:55:34 +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 81F4E1800B6B; Tue, 7 Aug 2018 13:55:34 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.rdu2.redhat.com [10.11.54.4]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id w77DtWs3006389 for ; Tue, 7 Aug 2018 09:55:32 -0400 Received: by smtp.corp.redhat.com (Postfix) id 529412026D76; Tue, 7 Aug 2018 13:55:32 +0000 (UTC) Received: from antique-work.brq.redhat.com (unknown [10.43.2.152]) by smtp.corp.redhat.com (Postfix) with ESMTP id E5DC82026D66 for ; Tue, 7 Aug 2018 13:55:31 +0000 (UTC) From: Pavel Hrdina To: libvir-list@redhat.com Date: Tue, 7 Aug 2018 15:55:22 +0200 Message-Id: <64222d56fcaa1feffbca392d58ccd3dc43d0e480.1533650092.git.phrdina@redhat.com> In-Reply-To: References: In-Reply-To: References: X-Scanned-By: MIMEDefang 2.78 on 10.11.54.4 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 3/9] conf: rename and move virStoragePoolSourceInitiatorAttr 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: , MIME-Version: 1.0 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.26 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.48]); Tue, 07 Aug 2018 13:55:35 +0000 (UTC) X-ZohoMail: RDMRC_0 RSF_0 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" This structure will be reused by domain disk images as well. Signed-off-by: Pavel Hrdina Reviewed-by: J=EF=BF=BDn Tomko --- src/conf/storage_conf.h | 7 +------ src/util/virstoragefile.h | 6 ++++++ 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/src/conf/storage_conf.h b/src/conf/storage_conf.h index 858623783d..4d7abbbc98 100644 --- a/src/conf/storage_conf.h +++ b/src/conf/storage_conf.h @@ -140,11 +140,6 @@ struct _virStoragePoolSourceDeviceExtent { int type; /* virStorageFreeType */ }; =20 -typedef struct _virStoragePoolSourceInitiatorAttr virStoragePoolSourceInit= iatorAttr; -struct _virStoragePoolSourceInitiatorAttr { - char *iqn; /* Initiator IQN */ -}; - /* * Pools can be backed by one or more devices, and some * allow us to track free space on underlying devices. @@ -189,7 +184,7 @@ struct _virStoragePoolSource { char *name; =20 /* Initiator IQN */ - virStoragePoolSourceInitiatorAttr initiator; + virStorageSourceInitiatorDef initiator; =20 /* Authentication information */ virStorageAuthDefPtr auth; diff --git a/src/util/virstoragefile.h b/src/util/virstoragefile.h index c2c40edf68..d9e27a4a5f 100644 --- a/src/util/virstoragefile.h +++ b/src/util/virstoragefile.h @@ -226,6 +226,12 @@ struct _virStoragePRDef { char *mgralias; }; =20 +typedef struct _virStorageSourceInitiatorDef virStorageSourceInitiatorDef; +typedef virStorageSourceInitiatorDef *virStorageSourceInitiatorDefPtr; +struct _virStorageSourceInitiatorDef { + char *iqn; /* Initiator IQN */ +}; + typedef struct _virStorageDriverData virStorageDriverData; typedef virStorageDriverData *virStorageDriverDataPtr; =20 --=20 2.17.1 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Wed May 1 17:53:35 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 1533650141584880.2631591716062; Tue, 7 Aug 2018 06:55:41 -0700 (PDT) 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 10F5030B8F90; Tue, 7 Aug 2018 13:55:39 +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 B4B6065323; Tue, 7 Aug 2018 13:55:38 +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 59E824A469; Tue, 7 Aug 2018 13:55:38 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.rdu2.redhat.com [10.11.54.4]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id w77DtX0q006403 for ; Tue, 7 Aug 2018 09:55:33 -0400 Received: by smtp.corp.redhat.com (Postfix) id F3E342026D76; Tue, 7 Aug 2018 13:55:32 +0000 (UTC) Received: from antique-work.brq.redhat.com (unknown [10.43.2.152]) by smtp.corp.redhat.com (Postfix) with ESMTP id 925522026D66 for ; Tue, 7 Aug 2018 13:55:32 +0000 (UTC) From: Pavel Hrdina To: libvir-list@redhat.com Date: Tue, 7 Aug 2018 15:55:23 +0200 Message-Id: <977442083bdf16bd2065ad674320d30dfcfc22e8.1533650092.git.phrdina@redhat.com> In-Reply-To: References: In-Reply-To: References: X-Scanned-By: MIMEDefang 2.78 on 10.11.54.4 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 4/9] util: introduce virStorageSourceInitiator functions 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: , MIME-Version: 1.0 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.49]); Tue, 07 Aug 2018 13:55:39 +0000 (UTC) X-ZohoMail: RDMRC_0 RSF_0 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" The same code would be used for storage pools and domain disks. Signed-off-by: Pavel Hrdina Reviewed-by: J=EF=BF=BDn Tomko --- src/util/virstoragefile.c | 34 ++++++++++++++++++++++++++++++++++ src/util/virstoragefile.h | 15 +++++++++++++++ 2 files changed, 49 insertions(+) diff --git a/src/util/virstoragefile.c b/src/util/virstoragefile.c index 56082f34e9..fb79ceddd0 100644 --- a/src/util/virstoragefile.c +++ b/src/util/virstoragefile.c @@ -4314,6 +4314,40 @@ virStorageSourcePrivateDataFormatRelPath(virStorageS= ourcePtr src, return 0; } =20 +void +virStorageSourceInitiatorParseXML(xmlXPathContextPtr ctxt, + virStorageSourceInitiatorDefPtr initiato= r) +{ + initiator->iqn =3D virXPathString("string(./initiator/iqn/@name)", ctx= t); +} + +void +virStorageSourceInitiatorFormatXML(virStorageSourceInitiatorDefPtr initiat= or, + virBufferPtr buf) +{ + if (!initiator->iqn) + return; + + virBufferAddLit(buf, "\n"); + virBufferAdjustIndent(buf, 2); + virBufferEscapeString(buf, "\n", initiator->iqn); + virBufferAdjustIndent(buf, -2); + virBufferAddLit(buf, "\n"); +} + +int +virStorageSourceInitiatorCopy(virStorageSourceInitiatorDefPtr dest, + const virStorageSourceInitiatorDef *src) +{ + return VIR_STRDUP(dest->iqn, src->iqn); +} + +void +virStorageSourceInitiatorClear(virStorageSourceInitiatorDefPtr initiator) +{ + VIR_FREE(initiator->iqn); +} + static bool virStorageFileIsInitialized(const virStorageSource *src) { diff --git a/src/util/virstoragefile.h b/src/util/virstoragefile.h index d9e27a4a5f..b6013431cc 100644 --- a/src/util/virstoragefile.h +++ b/src/util/virstoragefile.h @@ -492,6 +492,21 @@ int virStorageSourcePrivateDataFormatRelPath(virStorageSourcePtr src, virBufferPtr buf); =20 +void +virStorageSourceInitiatorParseXML(xmlXPathContextPtr ctxt, + virStorageSourceInitiatorDefPtr initiato= r); + +void +virStorageSourceInitiatorFormatXML(virStorageSourceInitiatorDefPtr initiat= or, + virBufferPtr buf); + +int +virStorageSourceInitiatorCopy(virStorageSourceInitiatorDefPtr dest, + const virStorageSourceInitiatorDef *src); + +void +virStorageSourceInitiatorClear(virStorageSourceInitiatorDefPtr initiator); + int virStorageFileInit(virStorageSourcePtr src); int virStorageFileInitAs(virStorageSourcePtr src, uid_t uid, gid_t gid); --=20 2.17.1 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Wed May 1 17:53:35 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 1533650145617764.160740259483; Tue, 7 Aug 2018 06:55:45 -0700 (PDT) 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 20D08550CC; Tue, 7 Aug 2018 13:55:43 +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 E187160F90; Tue, 7 Aug 2018 13:55:42 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id 937663FCC1; Tue, 7 Aug 2018 13:55:42 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.rdu2.redhat.com [10.11.54.4]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id w77DtXQr006408 for ; Tue, 7 Aug 2018 09:55:34 -0400 Received: by smtp.corp.redhat.com (Postfix) id C7A932026D76; Tue, 7 Aug 2018 13:55:33 +0000 (UTC) Received: from antique-work.brq.redhat.com (unknown [10.43.2.152]) by smtp.corp.redhat.com (Postfix) with ESMTP id 3F3772026D66 for ; Tue, 7 Aug 2018 13:55:33 +0000 (UTC) From: Pavel Hrdina To: libvir-list@redhat.com Date: Tue, 7 Aug 2018 15:55:24 +0200 Message-Id: <2496d08273bc15d383710cce4a264ce46feaca1f.1533650092.git.phrdina@redhat.com> In-Reply-To: References: In-Reply-To: References: X-Scanned-By: MIMEDefang 2.78 on 10.11.54.4 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 5/9] conf: use virStorageSourceInitiator functions 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: , MIME-Version: 1.0 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]); Tue, 07 Aug 2018 13:55:43 +0000 (UTC) X-ZohoMail: RDMRC_0 RSF_0 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" Signed-off-by: Pavel Hrdina Reviewed-by: J=EF=BF=BDn Tomko --- src/conf/storage_conf.c | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/src/conf/storage_conf.c b/src/conf/storage_conf.c index a0c92af820..50dbc937e7 100644 --- a/src/conf/storage_conf.c +++ b/src/conf/storage_conf.c @@ -380,7 +380,7 @@ virStoragePoolSourceClear(virStoragePoolSourcePtr sourc= e) VIR_FREE(source->dir); VIR_FREE(source->name); virStorageAdapterClear(&source->adapter); - VIR_FREE(source->initiator.iqn); + virStorageSourceInitiatorClear(&source->initiator); virStorageAuthDefFree(source->auth); VIR_FREE(source->vendor); VIR_FREE(source->product); @@ -488,7 +488,8 @@ virStoragePoolDefParseSource(xmlXPathContextPtr ctxt, } =20 VIR_FREE(nodeset); - source->initiator.iqn =3D virXPathString("string(./initiator/iqn/@name= )", ctxt); + + virStorageSourceInitiatorParseXML(ctxt, &source->initiator); =20 nsource =3D virXPathNodeSet("./device", ctxt, &nodeset); if (nsource < 0) @@ -950,15 +951,8 @@ virStoragePoolSourceFormat(virBufferPtr buf, if (options->flags & VIR_STORAGE_POOL_SOURCE_NAME) virBufferEscapeString(buf, "%s\n", src->name); =20 - if ((options->flags & VIR_STORAGE_POOL_SOURCE_INITIATOR_IQN) && - src->initiator.iqn) { - virBufferAddLit(buf, "\n"); - virBufferAdjustIndent(buf, 2); - virBufferEscapeString(buf, "\n", - src->initiator.iqn); - virBufferAdjustIndent(buf, -2); - virBufferAddLit(buf, "\n"); - } + if (options->flags & VIR_STORAGE_POOL_SOURCE_INITIATOR_IQN) + virStorageSourceInitiatorFormatXML(&src->initiator, buf); =20 if (options->formatToString) { const char *format =3D (options->formatToString)(src->format); --=20 2.17.1 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Wed May 1 17:53:35 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 153365015246572.19410954335444; Tue, 7 Aug 2018 06:55:52 -0700 (PDT) Received: from smtp.corp.redhat.com (int-mx09.intmail.prod.int.phx2.redhat.com [10.5.11.24]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id EA0F4C057F84; Tue, 7 Aug 2018 13:55:49 +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 B889F308BDB2; Tue, 7 Aug 2018 13:55: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 6A8911800B70; Tue, 7 Aug 2018 13:55:49 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.rdu2.redhat.com [10.11.54.4]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id w77DtYU6006413 for ; Tue, 7 Aug 2018 09:55:34 -0400 Received: by smtp.corp.redhat.com (Postfix) id 737F42026D76; Tue, 7 Aug 2018 13:55:34 +0000 (UTC) Received: from antique-work.brq.redhat.com (unknown [10.43.2.152]) by smtp.corp.redhat.com (Postfix) with ESMTP id 12F072026D66 for ; Tue, 7 Aug 2018 13:55:33 +0000 (UTC) From: Pavel Hrdina To: libvir-list@redhat.com Date: Tue, 7 Aug 2018 15:55:25 +0200 Message-Id: <0886102ddcd18d6b75f5dfdc364c827e1cad4776.1533650092.git.phrdina@redhat.com> In-Reply-To: References: In-Reply-To: References: X-Scanned-By: MIMEDefang 2.78 on 10.11.54.4 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 6/9] docs: move storage initiator def into storagecommon.rng 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: , MIME-Version: 1.0 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.24 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.32]); Tue, 07 Aug 2018 13:55:50 +0000 (UTC) X-ZohoMail: RDMRC_0 RSF_0 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" Signed-off-by: Pavel Hrdina Reviewed-by: J=EF=BF=BDn Tomko --- docs/schemas/storagecommon.rng | 11 +++++++++++ docs/schemas/storagepool.rng | 11 ----------- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/docs/schemas/storagecommon.rng b/docs/schemas/storagecommon.rng index cb4f14f52f..9d17d934de 100644 --- a/docs/schemas/storagecommon.rng +++ b/docs/schemas/storagecommon.rng @@ -39,6 +39,17 @@ =20 + + + + + + + + + + + diff --git a/docs/schemas/storagepool.rng b/docs/schemas/storagepool.rng index 11ac55d06f..74f4363106 100644 --- a/docs/schemas/storagepool.rng +++ b/docs/schemas/storagepool.rng @@ -336,17 +336,6 @@ =20 - - - - - - - - - - - --=20 2.17.1 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Wed May 1 17:53:35 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 1533650145262889.6675298411944; Tue, 7 Aug 2018 06:55:45 -0700 (PDT) Received: from smtp.corp.redhat.com (int-mx09.intmail.prod.int.phx2.redhat.com [10.5.11.24]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 22E45308FBA1; Tue, 7 Aug 2018 13:55:43 +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 DBEDE308BDB8; Tue, 7 Aug 2018 13:55:42 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id 924F23FCC0; Tue, 7 Aug 2018 13:55:42 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.rdu2.redhat.com [10.11.54.4]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id w77DtZxB006421 for ; Tue, 7 Aug 2018 09:55:35 -0400 Received: by smtp.corp.redhat.com (Postfix) id 1FD802026D76; Tue, 7 Aug 2018 13:55:35 +0000 (UTC) Received: from antique-work.brq.redhat.com (unknown [10.43.2.152]) by smtp.corp.redhat.com (Postfix) with ESMTP id B32B52026D66 for ; Tue, 7 Aug 2018 13:55:34 +0000 (UTC) From: Pavel Hrdina To: libvir-list@redhat.com Date: Tue, 7 Aug 2018 15:55:26 +0200 Message-Id: In-Reply-To: References: In-Reply-To: References: X-Scanned-By: MIMEDefang 2.78 on 10.11.54.4 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 7/9] conf: introduce initiator IQN support for domain disks 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: , MIME-Version: 1.0 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.24 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.43]); Tue, 07 Aug 2018 13:55:43 +0000 (UTC) X-ZohoMail: RDMRC_0 RSF_0 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" Signed-off-by: Pavel Hrdina --- docs/formatdomain.html.in | 20 ++++++++++++++++++++ docs/schemas/domaincommon.rng | 3 +++ src/conf/domain_conf.c | 10 ++++++++++ src/util/virstoragefile.c | 5 +++++ src/util/virstoragefile.h | 2 ++ 5 files changed, 40 insertions(+) diff --git a/docs/formatdomain.html.in b/docs/formatdomain.html.in index b63467bd91..a7fe8b5824 100644 --- a/docs/formatdomain.html.in +++ b/docs/formatdomain.html.in @@ -2733,6 +2733,17 @@ </source> <target dev=3D'sdb' bus=3D'scsi'/> </disk> + </disk> + <disk type=3D'network' device=3D'lun'> + <driver name=3D'qemu' type=3D'raw'/> + <source protocol=3D'iscsi' name=3D'iqn.2013-07.com.example:iscsi-no= pool/0'> + <host name=3D'example.com' port=3D'3260'/> + <initiator> + <iqn name=3D'iqn.2013-07.com.example:client'/> + </initiator> + </source> + <target dev=3D'sdb' bus=3D'scsi'/> + </disk> <disk type=3D'volume' device=3D'disk'> <driver name=3D'qemu' type=3D'raw'/> <source pool=3D'iscsi-pool' volume=3D'unit:0:0:1' mode=3D'host'/> @@ -3090,6 +3101,15 @@ It's recommended to allow libvirt manage the persistent reservations. +
initiator
+
Since libvirt 4.7.0, the + initiator element is supported for a disk + type "network" that is using a source + element with the protocol attribute "iscsi". + If present, the initiator element provides the + initiator IQN needed to access the source via mandatory + attribute name. +
=20

diff --git a/docs/schemas/domaincommon.rng b/docs/schemas/domaincommon.rng index ac04af51a1..1a786968cc 100644 --- a/docs/schemas/domaincommon.rng +++ b/docs/schemas/domaincommon.rng @@ -1699,6 +1699,9 @@ + + + =20 diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index d1504610a1..14112429fe 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -8826,6 +8826,8 @@ virDomainDiskSourceNetworkParse(xmlNodePtr node, =20 virStorageSourceNetworkAssignDefaultPorts(src); =20 + virStorageSourceInitiatorParseXML(ctxt, &src->initiator); + ret =3D 0; =20 cleanup: @@ -23541,6 +23543,8 @@ virDomainDiskSourceFormatNetwork(virBufferPtr attrB= uf, virBufferEscapeString(childBuf, "\n", src->snap= shot); virBufferEscapeString(childBuf, "\n", src->config= File); =20 + virStorageSourceInitiatorFormatXML(&src->initiator, childBuf); + return 0; } =20 @@ -30167,6 +30171,12 @@ virDomainDiskTranslateISCSIDircect(virDomainDiskDe= fPtr def, if (virDomainDiskAddISCSIPoolSourceHost(def, pooldef) < 0) return -1; =20 + if (!def->src->initiator.iqn && pooldef->source.initiator.iqn && + virStorageSourceInitiatorCopy(&def->src->initiator, + &pooldef->source.initiator) < 0) { + return -1; + } + return 0; } =20 diff --git a/src/util/virstoragefile.c b/src/util/virstoragefile.c index fb79ceddd0..6939d0d6c9 100644 --- a/src/util/virstoragefile.c +++ b/src/util/virstoragefile.c @@ -2272,6 +2272,9 @@ virStorageSourceCopy(const virStorageSource *src, !(ret->pr =3D virStoragePRDefCopy(src->pr))) goto error; =20 + if (virStorageSourceInitiatorCopy(&ret->initiator, &src->initiator)) + goto error; + if (backingChain && src->backingStore) { if (!(ret->backingStore =3D virStorageSourceCopy(src->backingStore, true))) @@ -2503,6 +2506,8 @@ virStorageSourceClear(virStorageSourcePtr def) VIR_FREE(def->tlsAlias); VIR_FREE(def->tlsCertdir); =20 + virStorageSourceInitiatorClear(&def->initiator); + memset(def, 0, sizeof(*def)); } =20 diff --git a/src/util/virstoragefile.h b/src/util/virstoragefile.h index b6013431cc..3ff6c4f900 100644 --- a/src/util/virstoragefile.h +++ b/src/util/virstoragefile.h @@ -261,6 +261,8 @@ struct _virStorageSource { bool encryptionInherited; virStoragePRDefPtr pr; =20 + virStorageSourceInitiatorDef initiator; + virObjectPtr privateData; =20 int format; /* virStorageFileFormat in domain backing chains, but --=20 2.17.1 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Wed May 1 17:53:35 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 1533650156002194.1741526270839; Tue, 7 Aug 2018 06:55:56 -0700 (PDT) Received: from smtp.corp.redhat.com (int-mx10.intmail.prod.int.phx2.redhat.com [10.5.11.25]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 1EC39307CF21; Tue, 7 Aug 2018 13:55:54 +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 DDA8C2010CFA; Tue, 7 Aug 2018 13:55:53 +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 8D9C13F7FA; Tue, 7 Aug 2018 13:55:53 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.rdu2.redhat.com [10.11.54.4]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id w77DtZBX006436 for ; Tue, 7 Aug 2018 09:55:36 -0400 Received: by smtp.corp.redhat.com (Postfix) id C03732026D76; Tue, 7 Aug 2018 13:55:35 +0000 (UTC) Received: from antique-work.brq.redhat.com (unknown [10.43.2.152]) by smtp.corp.redhat.com (Postfix) with ESMTP id 5F8252026D66 for ; Tue, 7 Aug 2018 13:55:35 +0000 (UTC) From: Pavel Hrdina To: libvir-list@redhat.com Date: Tue, 7 Aug 2018 15:55:27 +0200 Message-Id: In-Reply-To: References: In-Reply-To: References: X-Scanned-By: MIMEDefang 2.78 on 10.11.54.4 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 8/9] tests: introduce qemu disk-network-iscsi-modern test cases 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: , MIME-Version: 1.0 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.25 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.44]); Tue, 07 Aug 2018 13:55:54 +0000 (UTC) X-ZohoMail: RDMRC_0 RSF_0 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" This uses the new -drive options instead of iSCSI URI. Signed-off-by: Pavel Hrdina --- .../disk-network-iscsi-modern.args | 52 +++++++++++++++ .../disk-network-iscsi-modern.xml | 65 +++++++++++++++++++ tests/qemuxml2argvtest.c | 4 ++ 3 files changed, 121 insertions(+) create mode 100644 tests/qemuxml2argvdata/disk-network-iscsi-modern.args create mode 100644 tests/qemuxml2argvdata/disk-network-iscsi-modern.xml diff --git a/tests/qemuxml2argvdata/disk-network-iscsi-modern.args b/tests/= qemuxml2argvdata/disk-network-iscsi-modern.args new file mode 100644 index 0000000000..0a3e0bdb8b --- /dev/null +++ b/tests/qemuxml2argvdata/disk-network-iscsi-modern.args @@ -0,0 +1,52 @@ +LC_ALL=3DC \ +PATH=3D/bin \ +HOME=3D/home/test \ +USER=3Dtest \ +LOGNAME=3Dtest \ +QEMU_AUDIO_DRV=3Dnone \ +/usr/bin/qemu-system-i686 \ +-name QEMUGuest1 \ +-S \ +-machine pc,accel=3Dtcg,usb=3Doff,dump-guest-core=3Doff \ +-m 214 \ +-smp 1,sockets=3D1,cores=3D1,threads=3D1 \ +-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \ +-display none \ +-no-user-config \ +-nodefaults \ +-chardev socket,id=3Dcharmonitor,path=3D/tmp/lib/domain--1-QEMUGuest1/moni= tor.sock,\ +server,nowait \ +-mon chardev=3Dcharmonitor,id=3Dmonitor,mode=3Dcontrol \ +-rtc base=3Dutc \ +-no-shutdown \ +-no-acpi \ +-boot c \ +-device virtio-scsi-pci,id=3Dscsi0,bus=3Dpci.0,addr=3D0x3 \ +-usb \ +-drive file.driver=3Discsi,file.portal=3Dexample.org:6000,\ +file.target=3Diqn.1992-01.com.example,file.lun=3D0,file.transport=3Dtcp,fo= rmat=3Draw,\ +if=3Dnone,id=3Ddrive-virtio-disk0 \ +-device virtio-blk-pci,bus=3Dpci.0,addr=3D0x4,drive=3Ddrive-virtio-disk0,\ +id=3Dvirtio-disk0 \ +-drive file.driver=3Discsi,file.portal=3Dexample.org:6000,\ +file.target=3Diqn.1992-01.com.example,file.lun=3D1,file.transport=3Dtcp,fo= rmat=3Draw,\ +if=3Dnone,id=3Ddrive-virtio-disk1 \ +-device virtio-blk-pci,bus=3Dpci.0,addr=3D0x5,drive=3Ddrive-virtio-disk1,\ +id=3Dvirtio-disk1 \ +-drive file.driver=3Discsi,file.portal=3Dexample.org:6000,\ +file.target=3Diqn.1992-01.com.example:storage,file.lun=3D1,file.transport= =3Dtcp,\ +file.user=3Dmyname,file.password-secret=3DAQCVn5hO6HzFAhAAq0NCv8jtJcIcE+HO= BlMQ1A,\ +format=3Draw,if=3Dnone,id=3Ddrive-virtio-disk2 \ +-device virtio-blk-pci,bus=3Dpci.0,addr=3D0x6,drive=3Ddrive-virtio-disk2,\ +id=3Dvirtio-disk2 \ +-drive file.driver=3Discsi,file.portal=3Dexample.org:6000,\ +file.target=3Diqn.1992-01.com.example:storage,file.lun=3D2,file.transport= =3Dtcp,\ +file.user=3Dmyname,file.password-secret=3DAQCVn5hO6HzFAhAAq0NCv8jtJcIcE+HO= BlMQ1A,\ +format=3Draw,if=3Dnone,id=3Ddrive-virtio-disk3 \ +-device virtio-blk-pci,bus=3Dpci.0,addr=3D0x7,drive=3Ddrive-virtio-disk3,\ +id=3Dvirtio-disk3 \ +-drive file.driver=3Discsi,file.portal=3Dexample.org:3260,\ +file.target=3Diqn.1992-01.com.example,file.lun=3D0,file.transport=3Dtcp,fo= rmat=3Draw,\ +if=3Dnone,id=3Ddrive-scsi0-0-0-0 \ +-device scsi-block,bus=3Dscsi0.0,channel=3D0,scsi-id=3D0,lun=3D0,\ +drive=3Ddrive-scsi0-0-0-0,id=3Dscsi0-0-0-0 diff --git a/tests/qemuxml2argvdata/disk-network-iscsi-modern.xml b/tests/q= emuxml2argvdata/disk-network-iscsi-modern.xml new file mode 100644 index 0000000000..fa2a889b54 --- /dev/null +++ b/tests/qemuxml2argvdata/disk-network-iscsi-modern.xml @@ -0,0 +1,65 @@ + + QEMUGuest1 + c7a5fdbd-edaf-9455-926a-d65c16db1809 + 219136 + 219136 + 1 + + hvm + + + + destroy + restart + destroy + + /usr/bin/qemu-system-i686 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c index eb53b9afd5..16000ca59d 100644 --- a/tests/qemuxml2argvtest.c +++ b/tests/qemuxml2argvtest.c @@ -1057,6 +1057,10 @@ mymain(void) DO_TEST("disk-network-nbd", NONE); DO_TEST_CAPS_LATEST("disk-network-nbd"); DO_TEST("disk-network-iscsi", QEMU_CAPS_VIRTIO_SCSI, QEMU_CAPS_SCSI_BL= OCK); + DO_TEST("disk-network-iscsi-modern", + QEMU_CAPS_VIRTIO_SCSI, + QEMU_CAPS_SCSI_BLOCK, + QEMU_CAPS_ISCSI_PASSWORD_SECRET); DO_TEST_CAPS_LATEST("disk-network-iscsi"); DO_TEST_PARSE_ERROR("disk-network-iscsi-auth-secrettype-invalid", NONE= ); DO_TEST_PARSE_ERROR("disk-network-iscsi-auth-wrong-secrettype", NONE); --=20 2.17.1 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Wed May 1 17:53:35 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 1533650161671628.1786154491089; Tue, 7 Aug 2018 06:56:01 -0700 (PDT) Received: from smtp.corp.redhat.com (int-mx11.intmail.prod.int.phx2.redhat.com [10.5.11.26]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id A3AA13082145; Tue, 7 Aug 2018 13:55:59 +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 4A2D23001A56; Tue, 7 Aug 2018 13:55:59 +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 C47901800B73; Tue, 7 Aug 2018 13:55:58 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.rdu2.redhat.com [10.11.54.4]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id w77Dtaxk006448 for ; Tue, 7 Aug 2018 09:55:36 -0400 Received: by smtp.corp.redhat.com (Postfix) id 6C9D42026D76; Tue, 7 Aug 2018 13:55:36 +0000 (UTC) Received: from antique-work.brq.redhat.com (unknown [10.43.2.152]) by smtp.corp.redhat.com (Postfix) with ESMTP id 0C4E12026D66 for ; Tue, 7 Aug 2018 13:55:35 +0000 (UTC) From: Pavel Hrdina To: libvir-list@redhat.com Date: Tue, 7 Aug 2018 15:55:28 +0200 Message-Id: <0fb68a3d82203b5679c83cba4834f79787b18e93.1533650092.git.phrdina@redhat.com> In-Reply-To: References: In-Reply-To: References: X-Scanned-By: MIMEDefang 2.78 on 10.11.54.4 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 9/9] qemu: add support for domain disk initiator IQN 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: , MIME-Version: 1.0 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.26 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.42]); Tue, 07 Aug 2018 13:56:00 +0000 (UTC) X-ZohoMail: RDMRC_0 RSF_0 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" Signed-off-by: Pavel Hrdina --- src/qemu/qemu_block.c | 2 ++ src/qemu/qemu_domain.c | 9 +++++++++ tests/qemuxml2argvdata/disk-network-iscsi-modern.args | 8 +++++++- tests/qemuxml2argvdata/disk-network-iscsi-modern.xml | 10 ++++++++++ 4 files changed, 28 insertions(+), 1 deletion(-) diff --git a/src/qemu/qemu_block.c b/src/qemu/qemu_block.c index 66e6301210..be120b30f0 100644 --- a/src/qemu/qemu_block.c +++ b/src/qemu/qemu_block.c @@ -819,6 +819,7 @@ qemuBlockStorageSourceGetISCSIProps(virStorageSourcePtr= src) * lun:1, * user:"username", * password-secret:"secret-alias", + * initiator-name:"iqn.2017-04.com.example:client" * } */ =20 @@ -860,6 +861,7 @@ qemuBlockStorageSourceGetISCSIProps(virStorageSourcePtr= src) "s:transport", "tcp", "S:user", username, "S:password-secret", objalias, + "S:initiator-name", src->initiat= or.iqn, NULL)); goto cleanup; =20 diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index 6b50e0c484..e8960105c3 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -4682,6 +4682,15 @@ qemuDomainValidateStorageSource(virStorageSourcePtr = src, return -1; } =20 + /* Use QEMU_CAPS_ISCSI_PASSWORD_SECRET as witness that iscsi 'initiato= r-name' + * option is available, it was introduced at the same time. */ + if (src->initiator.iqn && + !virQEMUCapsGet(qemuCaps, QEMU_CAPS_ISCSI_PASSWORD_SECRET)) { + virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", + _("iSCSI initiator IQN not supported with this QEMU= binary")); + return -1; + } + return 0; } =20 diff --git a/tests/qemuxml2argvdata/disk-network-iscsi-modern.args b/tests/= qemuxml2argvdata/disk-network-iscsi-modern.args index 0a3e0bdb8b..a06b63a940 100644 --- a/tests/qemuxml2argvdata/disk-network-iscsi-modern.args +++ b/tests/qemuxml2argvdata/disk-network-iscsi-modern.args @@ -49,4 +49,10 @@ id=3Dvirtio-disk3 \ file.target=3Diqn.1992-01.com.example,file.lun=3D0,file.transport=3Dtcp,fo= rmat=3Draw,\ if=3Dnone,id=3Ddrive-scsi0-0-0-0 \ -device scsi-block,bus=3Dscsi0.0,channel=3D0,scsi-id=3D0,lun=3D0,\ -drive=3Ddrive-scsi0-0-0-0,id=3Dscsi0-0-0-0 +drive=3Ddrive-scsi0-0-0-0,id=3Dscsi0-0-0-0 \ +-drive file.driver=3Discsi,file.portal=3Dexample.org:3260,\ +file.target=3Diqn.1992-01.com.example:server,file.lun=3D0,file.transport= =3Dtcp,\ +file.initiator-name=3Diqn.1992-01.com.example:client,format=3Draw,if=3Dnon= e,\ +id=3Ddrive-scsi0-0-0-1 \ +-device scsi-block,bus=3Dscsi0.0,channel=3D0,scsi-id=3D0,lun=3D1,\ +drive=3Ddrive-scsi0-0-0-1,id=3Dscsi0-0-0-1 diff --git a/tests/qemuxml2argvdata/disk-network-iscsi-modern.xml b/tests/q= emuxml2argvdata/disk-network-iscsi-modern.xml index fa2a889b54..d1be9c4e7d 100644 --- a/tests/qemuxml2argvdata/disk-network-iscsi-modern.xml +++ b/tests/qemuxml2argvdata/disk-network-iscsi-modern.xml @@ -55,6 +55,16 @@ + + + + + + + + + + --=20 2.17.1 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list