This series contains a few cleanups with respect to the vmstate I/O functions. Apart from making the interface more consistent (writes were already vectored, but not reads), this makes use of the new byte-based .bdrv_co_preadv/pwritev callbacks in qcow2 to get rid of a few hacks, including bs->zero_beyond_eof.
Kevin Wolf (6): block: Introduce bdrv_preadv() block: Make .bdrv_load_vmstate() vectored block: Allow .bdrv_load/save_vmstate() to return 0/-errno block: Make bdrv_load/save_vmstate coroutine_fns qcow2: Let vmstate call qcow2_co_preadv/pwrite directly block: Remove bs->zero_beyond_eof block.c | 2 - block/io.c | 173 +++++++++++++++++++++++++++++++--------------- block/qcow2.c | 28 ++------ block/sheepdog.c | 13 +++- include/block/block.h | 2 + include/block/block_int.h | 13 ++-- 6 files changed, 143 insertions(+), 88 deletions(-) -- 1.8.3.1