[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-block] [PATCH v2 08/20] null: Switch to .bdrv_co_block_status()
From: |
Eric Blake |
Subject: |
[Qemu-block] [PATCH v2 08/20] null: Switch to .bdrv_co_block_status() |
Date: |
Fri, 14 Jul 2017 07:14:45 -0500 |
We are gradually moving away from sector-based interfaces, towards
byte-based. Update the null driver accordingly.
Signed-off-by: Eric Blake <address@hidden>
---
v2: rebase to mapping parameter
---
block/null.c | 22 +++++++++++-----------
1 file changed, 11 insertions(+), 11 deletions(-)
diff --git a/block/null.c b/block/null.c
index 876f909..ef61fc0 100644
--- a/block/null.c
+++ b/block/null.c
@@ -204,22 +204,22 @@ static int null_reopen_prepare(BDRVReopenState
*reopen_state,
return 0;
}
-static int64_t coroutine_fn null_co_get_block_status(BlockDriverState *bs,
- int64_t sector_num,
- int nb_sectors, int *pnum,
- BlockDriverState **file)
+static int64_t coroutine_fn null_co_block_status(BlockDriverState *bs,
+ bool mapping,
+ int64_t offset,
+ int64_t bytes, int64_t *pnum,
+ BlockDriverState **file)
{
BDRVNullState *s = bs->opaque;
- off_t start = sector_num * BDRV_SECTOR_SIZE;
+ int64_t ret = BDRV_BLOCK_OFFSET_VALID | (offset & BDRV_BLOCK_OFFSET_MASK);
- *pnum = nb_sectors;
+ *pnum = bytes;
*file = bs;
if (s->read_zeroes) {
- return BDRV_BLOCK_OFFSET_VALID | start | BDRV_BLOCK_ZERO;
- } else {
- return BDRV_BLOCK_OFFSET_VALID | start;
+ ret |= BDRV_BLOCK_ZERO;
}
+ return ret;
}
static void null_refresh_filename(BlockDriverState *bs, QDict *opts)
@@ -250,7 +250,7 @@ static BlockDriver bdrv_null_co = {
.bdrv_co_flush_to_disk = null_co_flush,
.bdrv_reopen_prepare = null_reopen_prepare,
- .bdrv_co_get_block_status = null_co_get_block_status,
+ .bdrv_co_block_status = null_co_block_status,
.bdrv_refresh_filename = null_refresh_filename,
};
@@ -269,7 +269,7 @@ static BlockDriver bdrv_null_aio = {
.bdrv_aio_flush = null_aio_flush,
.bdrv_reopen_prepare = null_reopen_prepare,
- .bdrv_co_get_block_status = null_co_get_block_status,
+ .bdrv_co_block_status = null_co_block_status,
.bdrv_refresh_filename = null_refresh_filename,
};
--
2.9.4
- [Qemu-block] [PATCH v2 00/20] add byte-based block_status driver callbacks, Eric Blake, 2017/07/14
- [Qemu-block] [PATCH v2 01/20] block: Add .bdrv_co_block_status() callback, Eric Blake, 2017/07/14
- [Qemu-block] [PATCH v2 02/20] block: Switch passthrough drivers to .bdrv_co_block_status(), Eric Blake, 2017/07/14
- [Qemu-block] [PATCH v2 03/20] file-posix: Switch to .bdrv_co_block_status(), Eric Blake, 2017/07/14
- [Qemu-block] [PATCH v2 04/20] gluster: Switch to .bdrv_co_block_status(), Eric Blake, 2017/07/14
- [Qemu-block] [PATCH v2 05/20] iscsi: Switch cluster_sectors to byte-based, Eric Blake, 2017/07/14
- [Qemu-block] [PATCH v2 08/20] null: Switch to .bdrv_co_block_status(),
Eric Blake <=
- [Qemu-block] [PATCH v2 07/20] iscsi: Switch to .bdrv_co_block_status(), Eric Blake, 2017/07/14
- [Qemu-block] [PATCH v2 06/20] iscsi: Switch iscsi_allocmap_update() to byte-based, Eric Blake, 2017/07/14
- [Qemu-block] [PATCH v2 09/20] parallels: Switch to .bdrv_co_block_status(), Eric Blake, 2017/07/14
- [Qemu-block] [PATCH v2 10/20] qcow: Switch to .bdrv_co_block_status(), Eric Blake, 2017/07/14
- [Qemu-block] [PATCH v2 11/20] qcow2: Switch to .bdrv_co_block_status(), Eric Blake, 2017/07/14
- [Qemu-block] [PATCH v2 12/20] qed: Switch to .bdrv_co_block_status(), Eric Blake, 2017/07/14
- [Qemu-block] [PATCH v2 13/20] raw: Switch to .bdrv_co_block_status(), Eric Blake, 2017/07/14
- [Qemu-block] [PATCH v2 14/20] sheepdog: Switch to .bdrv_co_block_status(), Eric Blake, 2017/07/14
- [Qemu-block] [PATCH v2 15/20] vdi: Avoid bitrot of debugging code, Eric Blake, 2017/07/14
- [Qemu-block] [PATCH v2 16/20] vdi: Switch to .bdrv_co_block_status(), Eric Blake, 2017/07/14