block: trickle down the fallback image creation function use to the block drivers
commit5a5e7f8cd86b7ced0732b1b6e28c82baa65b09c9
authorMaxim Levitsky <mlevitsk@redhat.com>
Thu, 26 Mar 2020 01:12:18 +0000 (26 03:12 +0200)
committerMax Reitz <mreitz@redhat.com>
Thu, 26 Mar 2020 13:44:33 +0000 (26 14:44 +0100)
tree8b31bc0a2fc9cd2b25032ef51546035d8b38e78f
parentb92902dfeaafbceaf744ab7473f2d070284f6172
block: trickle down the fallback image creation function use to the block drivers

Instead of checking the .bdrv_co_create_opts to see if we need the
fallback, just implement the .bdrv_co_create_opts in the drivers that
need it.

This way we don't break various places that need to know if the
underlying protocol/format really supports image creation, and this way
we still allow some drivers to not support image creation.

Fixes: fd17146cd93d1704cd96d7c2757b325fc7aac6fd
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1816007

Note that technically this driver reverts the image creation fallback
for the vxhs driver since I don't have a means to test it, and IMHO it
is better to leave it not supported as it was prior to generic image
creation patches.

Also drop iscsi_create_opts which was left accidentally.

Signed-off-by: Maxim Levitsky <mlevitsk@redhat.com>
Message-Id: <20200326011218.29230-3-mlevitsk@redhat.com>
Reviewed-by: Denis V. Lunev <den@openvz.org>
[mreitz: Fixed alignment, and moved bdrv_co_create_opts_simple() and
         bdrv_create_opts_simple from block.h into block_int.h]
Signed-off-by: Max Reitz <mreitz@redhat.com>
block.c
block/file-posix.c
block/iscsi.c
block/nbd.c
block/nvme.c
include/block/block.h
include/block/block_int.h