diff options
author | Eric Blake <eblake@redhat.com> | 2016-07-15 17:22:50 -0600 |
---|---|---|
committer | Stefan Hajnoczi <stefanha@redhat.com> | 2016-07-20 14:11:54 +0100 |
commit | 9f1963b3f72521f75a549f8afd61b19e7da63c6f (patch) | |
tree | 9679b0c2ebd1648b295048a58587bbfdad0039cb /include/block | |
parent | 6bd01f14dbef06dc22c0400f12dfbef06ab6b766 (diff) | |
download | qemu-9f1963b3f72521f75a549f8afd61b19e7da63c6f.zip qemu-9f1963b3f72521f75a549f8afd61b19e7da63c6f.tar.gz qemu-9f1963b3f72521f75a549f8afd61b19e7da63c6f.tar.bz2 |
block: Convert bdrv_co_discard() to byte-based
Another step towards byte-based interfaces everywhere. Replace
the sector-based bdrv_co_discard() with a new byte-based
bdrv_co_pdiscard(), which silently ignores any unaligned head
or tail. Driver callbacks will be converted in followup patches.
By calculating the alignment outside of the loop, and clamping
the max discard to an aligned value, we can simplify the actions
done within the loop.
Signed-off-by: Eric Blake <eblake@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-id: 1468624988-423-2-git-send-email-eblake@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Diffstat (limited to 'include/block')
-rw-r--r-- | include/block/block.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/include/block/block.h b/include/block/block.h index 616d8b9..4f5cebf 100644 --- a/include/block/block.h +++ b/include/block/block.h @@ -342,7 +342,7 @@ void coroutine_fn bdrv_co_drain(BlockDriverState *bs); void bdrv_drain_all(void); int bdrv_discard(BlockDriverState *bs, int64_t sector_num, int nb_sectors); -int bdrv_co_discard(BlockDriverState *bs, int64_t sector_num, int nb_sectors); +int bdrv_co_pdiscard(BlockDriverState *bs, int64_t offset, int count); int bdrv_has_zero_init_1(BlockDriverState *bs); int bdrv_has_zero_init(BlockDriverState *bs); bool bdrv_unallocated_blocks_are_zero(BlockDriverState *bs); |