[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 35/55] qcow2: Update get_cluster_table() to support L
From: |
Kevin Wolf |
Subject: |
[Qemu-devel] [PULL 35/55] qcow2: Update get_cluster_table() to support L2 slices |
Date: |
Tue, 13 Feb 2018 18:05:09 +0100 |
From: Alberto Garcia <address@hidden>
This patch updates get_cluster_table() to return L2 slices instead of
full L2 tables.
The code itself needs almost no changes, it only needs to call
offset_to_l2_slice_index() instead of offset_to_l2_index(). This patch
also renames all the relevant variables and the documentation.
Signed-off-by: Alberto Garcia <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Reviewed-by: Max Reitz <address@hidden>
Message-id: address@hidden
Signed-off-by: Max Reitz <address@hidden>
---
block/qcow2-cluster.c | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/block/qcow2-cluster.c b/block/qcow2-cluster.c
index 044eccda72..cd1ba40f74 100644
--- a/block/qcow2-cluster.c
+++ b/block/qcow2-cluster.c
@@ -659,20 +659,20 @@ fail:
* get_cluster_table
*
* for a given disk offset, load (and allocate if needed)
- * the l2 table.
+ * the appropriate slice of its l2 table.
*
- * the cluster index in the l2 table is given to the caller.
+ * the cluster index in the l2 slice is given to the caller.
*
* Returns 0 on success, -errno in failure case
*/
static int get_cluster_table(BlockDriverState *bs, uint64_t offset,
- uint64_t **new_l2_table,
+ uint64_t **new_l2_slice,
int *new_l2_index)
{
BDRVQcow2State *s = bs->opaque;
unsigned int l2_index;
uint64_t l1_index, l2_offset;
- uint64_t *l2_table = NULL;
+ uint64_t *l2_slice = NULL;
int ret;
/* seek to the l2 offset in the l1 table */
@@ -712,17 +712,17 @@ static int get_cluster_table(BlockDriverState *bs,
uint64_t offset,
assert(offset_into_cluster(s, l2_offset) == 0);
}
- /* load the l2 table in memory */
- ret = l2_load(bs, offset, l2_offset, &l2_table);
+ /* load the l2 slice in memory */
+ ret = l2_load(bs, offset, l2_offset, &l2_slice);
if (ret < 0) {
return ret;
}
/* find the cluster offset for the given disk offset */
- l2_index = offset_to_l2_index(s, offset);
+ l2_index = offset_to_l2_slice_index(s, offset);
- *new_l2_table = l2_table;
+ *new_l2_slice = l2_slice;
*new_l2_index = l2_index;
return 0;
--
2.13.6
- [Qemu-devel] [PULL 34/55] qcow2: Refactor get_cluster_table(), (continued)
- [Qemu-devel] [PULL 34/55] qcow2: Refactor get_cluster_table(), Kevin Wolf, 2018/02/13
- [Qemu-devel] [PULL 25/55] qcow2: Remove BDS parameter from qcow2_cache_clean_unused(), Kevin Wolf, 2018/02/13
- [Qemu-devel] [PULL 28/55] qcow2: Add offset_to_l1_index(), Kevin Wolf, 2018/02/13
- [Qemu-devel] [PULL 26/55] qcow2: Remove BDS parameter from qcow2_cache_discard(), Kevin Wolf, 2018/02/13
- [Qemu-devel] [PULL 37/55] qcow2: Update qcow2_alloc_cluster_link_l2() to support L2 slices, Kevin Wolf, 2018/02/13
- [Qemu-devel] [PULL 29/55] qcow2: Add l2_slice_size field to BDRVQcow2State, Kevin Wolf, 2018/02/13
- [Qemu-devel] [PULL 27/55] qcow2: Remove BDS parameter from qcow2_cache_is_table_offset(), Kevin Wolf, 2018/02/13
- [Qemu-devel] [PULL 24/55] qcow2: Remove BDS parameter from qcow2_cache_destroy(), Kevin Wolf, 2018/02/13
- [Qemu-devel] [PULL 32/55] qcow2: Prepare l2_allocate() for adding L2 slice support, Kevin Wolf, 2018/02/13
- [Qemu-devel] [PULL 41/55] qcow2: Update zero_single_l2() to support L2 slices, Kevin Wolf, 2018/02/13
- [Qemu-devel] [PULL 35/55] qcow2: Update get_cluster_table() to support L2 slices,
Kevin Wolf <=
- [Qemu-devel] [PULL 33/55] qcow2: Update l2_allocate() to support L2 slices, Kevin Wolf, 2018/02/13
- [Qemu-devel] [PULL 40/55] qcow2: Update discard_single_l2() to support L2 slices, Kevin Wolf, 2018/02/13
- [Qemu-devel] [PULL 36/55] qcow2: Update qcow2_get_cluster_offset() to support L2 slices, Kevin Wolf, 2018/02/13
- [Qemu-devel] [PULL 38/55] qcow2: Update handle_copied() to support L2 slices, Kevin Wolf, 2018/02/13
- [Qemu-devel] [PULL 39/55] qcow2: Update handle_alloc() to support L2 slices, Kevin Wolf, 2018/02/13
- [Qemu-devel] [PULL 42/55] qcow2: Prepare qcow2_update_snapshot_refcount() for adding L2 slice support, Kevin Wolf, 2018/02/13
- [Qemu-devel] [PULL 44/55] qcow2: Read refcount before L2 table in expand_zero_clusters_in_l1(), Kevin Wolf, 2018/02/13
- [Qemu-devel] [PULL 46/55] qcow2: Update expand_zero_clusters_in_l1() to support L2 slices, Kevin Wolf, 2018/02/13
- [Qemu-devel] [PULL 43/55] qcow2: Update qcow2_update_snapshot_refcount() to support L2 slices, Kevin Wolf, 2018/02/13
- [Qemu-devel] [PULL 47/55] qcow2: Update qcow2_truncate() to support L2 slices, Kevin Wolf, 2018/02/13