[libvirt] [PATCH v2 2/3] storage: Introduce iscsi_direct pool type
Michal Privoznik
mprivozn at redhat.com
Wed Jul 25 05:12:48 UTC 2018
On 07/24/2018 06:19 PM, Clementine Hayat wrote:
> 2018-07-24 14:24 GMT+02:00 Michal Privoznik <mprivozn at redhat.com>:
>> On 07/23/2018 08:43 PM, clem at lse.epita.fr wrote:
>>> From: Clementine Hayat <clem at lse.epita.fr>
>>>
>>> Introducing the pool as a noop. Integration inside the build
>>> system. Implementation will be in the following commits.
>>>
>>> Signed-off-by: Clementine Hayat <clem at lse.epita.fr>
>>> ---
>>> configure.ac | 6 ++-
>>> m4/virt-storage-iscsi-direct.m4 | 41 +++++++++++++++
>>> src/conf/domain_conf.c | 4 ++
>>> src/conf/storage_conf.c | 33 ++++++++++--
>>> src/conf/storage_conf.h | 1 +
>>> src/conf/virstorageobj.c | 2 +
>>> src/storage/Makefile.inc.am | 22 ++++++++
>>> src/storage/storage_backend.c | 6 +++
>>> src/storage/storage_backend_iscsi_direct.c | 58 ++++++++++++++++++++++
>>> src/storage/storage_backend_iscsi_direct.h | 6 +++
>>> src/storage/storage_driver.c | 1 +
>>> tools/virsh-pool.c | 3 ++
>>> 12 files changed, 178 insertions(+), 5 deletions(-)
>>> create mode 100644 m4/virt-storage-iscsi-direct.m4
>>> create mode 100644 src/storage/storage_backend_iscsi_direct.c
>>> create mode 100644 src/storage/storage_backend_iscsi_direct.h
>>
>>> @@ -803,6 +814,19 @@ virStoragePoolDefParseXML(xmlXPathContextPtr ctxt)
>>> goto error;
>>> }
>>>
>>> + if (ret->type == VIR_STORAGE_POOL_ISCSI_DIRECT) {
>>> + if (!ret->source.initiator.iqn) {
>>> + virReportError(VIR_ERR_XML_ERROR, "%s",
>>> + _("missing storage pool initiator iqn"));
>>> + goto error;
>>> + }
>>> + if (!ret->source.ndevice) {
>>> + virReportError(VIR_ERR_XML_ERROR, "%s",
>>> + _("missing storage pool device path"));
>>> + goto error;
>>> + }
>>> + }
>>
>> So the wole idea of poolOptions and volOptions is to specify which parts
>> of pool/volume XML are required so that we don't have to base checks
>> like this on ret->type rather than flags.
>> On the other hand, comment just above VIR_STORAGE_POOL_SOURCE_* enum
>> says it declares mandatory components which it clearly doesn't. So after
>> all I think we are safe here.
>
> That actually isn't the case for the initiator iqn flag.
> Is it on purpose or should I patch it in another thread?
I think saving that for a separate patch is okay.
Speaking of threads, I forgot to mention, feel free to send v3 as a
completely new thread. We don't really thread versions under v1.
Michal
More information about the libvir-list
mailing list