This series converts qcow2 to the byte-based I/O interfaces. This simplifies the code by removing many unit conversions, and in the unlikely case of actual unaligned requests, it even makes the driver work more efficiently by avoiding read-modify-write.
v2: - Be more careful with integer overflows [Eric] - Updated some more comments [Eric] - Rename copy_sectors -> do_perform_cow [Eric] - Write single byte instead of full sector at preallocation end [Eric] Kevin Wolf (5): qcow2: Work with bytes in qcow2_get_cluster_offset() qcow2: Implement .bdrv_co_preadv() qcow2: Make copy_sectors() byte based qcow2: Use bytes instead of sectors for QCowL2Meta qcow2: Implement .bdrv_co_pwritev() block/qcow2-cluster.c | 146 +++++++++++++++++-------------------- block/qcow2.c | 197 +++++++++++++++++++++++++------------------------- block/qcow2.h | 18 ++--- trace-events | 6 +- 4 files changed, 176 insertions(+), 191 deletions(-) -- 1.8.3.1