block: Introduce byte-based aio read/write
commit60cb2fa7eb5431d8996589ebc5dde865c602d54b
authorEric Blake <eblake@redhat.com>
Fri, 6 May 2016 16:26:30 +0000 (6 10:26 -0600)
committerKevin Wolf <kwolf@redhat.com>
Thu, 12 May 2016 13:22:08 +0000 (12 15:22 +0200)
tree7434d1c58e0ec3033d8330a2b121349e6a2e7b53
parent983a1600504b1b78242b9da29b0d7018a6eb231d
block: Introduce byte-based aio read/write

blk_aio_readv() and blk_aio_writev() are annoying in that they
can't access sub-sector granularity, and cannot pass flags.
Also, they require the caller to pass redundant information
about the size of the I/O (qiov->size in bytes must match
nb_sectors in sectors).

Add new blk_aio_preadv() and blk_aio_pwritev() functions to fix
the flaws. The next few patches will upgrade callers, then
finally delete the old interfaces.

Signed-off-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
block/block-backend.c
include/sysemu/block-backend.h