qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCHv2 00/11] iscsi/qemu-img/block-migration enhancements


From: Peter Lieven
Subject: [Qemu-devel] [PATCHv2 00/11] iscsi/qemu-img/block-migration enhancements
Date: Thu, 27 Jun 2013 15:11:24 +0200

this series adds logical block provisioning functions to the iscsi layer.
it adds the ability to write sparse images to iscsi targets which
support UNMAP and LBPRZ via qemu-img. additional block-migration is
enhanced to support an encoding for zero blocks on the network
and efficiently writing those zero blocks at the destination if
the driver supports it.

many thanks to Paolo, Kevin and Ronnie for their useful comments.

changes in v2:
  - added patch to read unmap limits from block limits VPD page
  - use a generic callback and new framework for coroutines that
    can also be used for further porting of the remaining aio
    routines. iscsi_co_{write_zeroes,is_allocated} use this new
    framework. commands are now also retried on check conditions.
  - iscsi_co_write_zeroes checks now for BDRV_O_UNMAP and
    if the request is not too big for a single UNMAP call.
  - added a patch to let iscsi_create unmap the whole device
    if thin provisioning is supported and the unmapped blocks
    read as zero. in this case return .has_zero_init = 1.
  - added a patch to let aio_discard silently fail if UNMAP
    is not supported or the request is too big.
  - factored out almost all conversions between qemu and lun
    sector size.
  - changed the alignment checks from assert() to failing
    the request.
  - dropped the qemu-img patch that called out to bdrv_write_zeroes.

Peter


Peter Lieven (11):
  iscsi: add logical block provisioning information to iscsilun
  iscsi: read unmap info from block limits vpd page
  iscsi: add bdrv_co_is_allocated
  iscsi: add bdrv_co_write_zeroes
  block: add bdrv_write_zeroes()
  block/raw: add bdrv_co_write_zeroes
  iscsi: let bdrv_create conditionally zero out the device
  block-migration: efficiently encode zero blocks
  iscsi: factor out sector conversions
  iscsi: ignore aio_discard if unsupported
  iscsi: assert that sectors are aligned to LUN blocksize

 block-migration.c             |   29 +++-
 block.c                       |   27 ++-
 block/iscsi.c                 |  365 ++++++++++++++++++++++++++++++++++++++++-
 block/raw.c                   |    8 +
 include/block/block.h         |    2 +
 include/migration/qemu-file.h |    1 +
 savevm.c                      |    2 +-
 7 files changed, 414 insertions(+), 20 deletions(-)

-- 
1.7.9.5




reply via email to

[Prev in Thread] Current Thread [Next in Thread]