On Thu, Jul 11, 2013 at 02:16:17PM +0200, Peter Lieven wrote: > 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(-)
Thanks, applied patches 5 & 6 to my block tree: https://github.com/stefanha/qemu/commits/block Stefan