I can add protocol type. For driver name, I considered that before, for
qemu, its actually use same driver for iSCSI and iSER, but there defined a
driver called "iser":
static BlockDriver bdrv_iser = {
.format_name = "iser",
.protocol_name = "iser", to use iser in qemu, we need to set driver as
"iser" and transport as "iser" as well. I think it should be
"iscsi" and
"rdma", I have discussed with qemu members, they said don't need to modify
in qemu. Maybe for future consideration, there might be a stand along
driver for iser.
On Wed, Dec 13, 2017 at 5:08 PM, Peter Krempa <pkrempa(a)redhat.com> wrote:
On Wed, Dec 13, 2017 at 13:52:55 +0800, lichstor(a)gmail.com wrote:
> From: zhangshengyu <zhangshengyu(a)fusionstack.cn>
>
> ---
> src/conf/domain_conf.c | 8 ++++-
> src/qemu/qemu_block.c | 3 +-
> src/qemu/qemu_command.c | 3 +-
> src/qemu/qemu_domain.c | 2 +-
> src/qemu/qemu_driver.c | 3 ++
> src/qemu/qemu_parse_command.c | 7 ++++
> src/util/virstoragefile.c | 75 ++++++++++++++++++++++++++++++
+++++++++++++
> src/util/virstoragefile.h | 1 +
> 8 files changed, 98 insertions(+), 4 deletions(-)
[...]
> @@ -3295,6 +3368,7 @@ static const struct virStorageSourceJSONDriverParser
jsonParsers[] = {
> {"tftp", virStorageSourceParseBackingJSONUri,
VIR_STORAGE_NET_PROTOCOL_TFTP},
> {"gluster", virStorageSourceParseBackingJSONGluster, 0},
> {"iscsi", virStorageSourceParseBackingJSONiSCSI, 0},
> + {"iser", virStorageSourceParseBackingJSONiSER, 0},
As I've said in my last reply: This is wrong. there's no 'iser' driver
in qemu. It's a type of transport for ISCSI.
> {"nbd", virStorageSourceParseBackingJSONNbd, 0},
> {"sheepdog", virStorageSourceParseBackingJSONSheepdog, 0},
> {"ssh", virStorageSourceParseBackingJSONSSH, 0},
> diff --git a/src/util/virstoragefile.h b/src/util/virstoragefile.h
> index 24382a0a6..33771ddaf 100644
> --- a/src/util/virstoragefile.h
> +++ b/src/util/virstoragefile.h
> @@ -129,6 +129,7 @@ typedef enum {
> VIR_STORAGE_NET_PROTOCOL_SHEEPDOG,
> VIR_STORAGE_NET_PROTOCOL_GLUSTER,
> VIR_STORAGE_NET_PROTOCOL_ISCSI,
> + VIR_STORAGE_NET_PROTOCOL_ISER,
... and thus this is wrong too. You need to add a new transport protocol
type, not a new storage protocol type.
Plus it's still missing tests.