block: Introduce .bdrv_co_preadv/pwritev BlockDriver function
commit3fb06697ae30ea59bf245f967a043e60f2aedb17
authorKevin Wolf <kwolf@redhat.com>
Mon, 25 Apr 2016 09:25:18 +0000 (25 11:25 +0200)
committerKevin Wolf <kwolf@redhat.com>
Thu, 12 May 2016 13:22:08 +0000 (12 15:22 +0200)
tree243b366c61e3b5de0d98f9dc1f32eff3bbe2bd23
parentcab3a3563c5484f0bedbf5f78ab4a49e71a81fe7
block: Introduce .bdrv_co_preadv/pwritev BlockDriver function

Many parts of the block layer are already byte granularity. The block
driver interface, however, was still missing an interface that allows
making use of this. This patch introduces a new BlockDriver interface,
which is based on coroutines, vectored, has flags and uses a byte
granularity. This is now the preferred interface for new drivers.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Reviewed-by: Fam Zheng <famz@redhat.com>
block/io.c
include/block/block_int.h