On 17.07.2013 17:05, Paolo Bonzini wrote:
Il 11/07/2013 14:16, Peter Lieven ha scritto:
this series adds logical block provisioning functions to the iscsi layer.
it also is the first step to the change of migration to coroutines in
block/iscsi.

the changes to qemu-img and block migration have been split and will
follow in separte patches later.

changes in v3:
  - merge both block provision inquiries into one patch. explitely free the 
iscsi tasks after
    the inquiry. limit the unmap to 128k blocks if the target returns max_unmap 
= 0xffffffff;
  - in the coroutine framework free the scsi task in the caller not in the 
callback. also
    change the iTask init as Kevin suggested.
  - in iscsi_co_is_allocated() return unallocated only for ANCHORED and 
UNALLOACTED to avoid
    a wrong return value if a new provisioning status is introduced.
  - added new patch adding .bdrv_co_discard
  - build .bdrv_co_write_zeroes on top of .bdrv_co_discard
  - fixed a bug for -ENOSPC in iscsi_create() spotted by Kevin.
  - remove support for misaligned nb_sectors in aio_readv
  - add log message in error case to lun alignment checks

Peter Lieven (10):
   iscsi: add logical block provisioning information to iscsilun
   iscsi: add .bdrv_co_is_allocated
   iscsi: add .bdrv_co_discard
   iscsi: add .bdrv_write_zeroes
   block: add bdrv_write_zeroes()
   block/raw: add bdrv_co_write_zeroes
   iscsi: fix -ENOSPC in iscsi_create()
   iscsi: factor out sector conversions
   iscsi: remove support for misaligned nb_sectors in aio_readv
   iscsi: assert that sectors are aligned to LUN blocksize

  block.c               |   27 ++-
  block/iscsi.c         |  433 +++++++++++++++++++++++++++++++++++++------------
  block/raw.c           |    8 +
  include/block/block.h |    2 +
  4 files changed, 358 insertions(+), 112 deletions(-)

Applied 7-10 to scsi-next, please rebase/resubmit the others (possibly
together with the qemu-img convert patches).
please consider also pulling

[PATCHv4 1/2] iscsi: add logical block provisioning information to iscsilun
[PATCHv4 2/2] iscsi: add .bdrv_co_is_allocated

these patches are unproblematic and keep the number of patches
in the series for the general qemu-img convert/write_zeroes_w_discard approach 
smaller.

patch 2/2 can also be easily converted to get_block_status even with correct 
BDRV_BLOCK_ZERO
information by evaluating iscsilun->lbprz (which is added in patch 1).

Peter

Reply via email to