[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-block] [PATCH v3 19/39] qcow2: Update get_cluster_table() to suppo
From: |
Alberto Garcia |
Subject: |
[Qemu-block] [PATCH v3 19/39] qcow2: Update get_cluster_table() to support L2 slices |
Date: |
Fri, 26 Jan 2018 16:59:46 +0200 |
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>
---
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 0c0cab85e8..416d48fa77 100644
--- a/block/qcow2-cluster.c
+++ b/block/qcow2-cluster.c
@@ -660,20 +660,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 */
@@ -713,17 +713,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.11.0
- Re: [Qemu-block] [PATCH v3 02/39] qcow2: Add table size field to Qcow2Cache, (continued)
- [Qemu-block] [PATCH v3 15/39] qcow2: Update l2_load() to support L2 slices, Alberto Garcia, 2018/01/26
- [Qemu-block] [PATCH v3 18/39] qcow2: Refactor get_cluster_table(), Alberto Garcia, 2018/01/26
- [Qemu-block] [PATCH v3 03/39] qcow2: Remove BDS parameter from qcow2_cache_get_table_addr(), Alberto Garcia, 2018/01/26
- [Qemu-block] [PATCH v3 12/39] qcow2: Add offset_to_l1_index(), Alberto Garcia, 2018/01/26
- [Qemu-block] [PATCH v3 19/39] qcow2: Update get_cluster_table() to support L2 slices,
Alberto Garcia <=
- [Qemu-block] [PATCH v3 37/39] iotests: Test valid values of l2-cache-entry-size, Alberto Garcia, 2018/01/26
- [Qemu-block] [PATCH v3 39/39] iotests: Add l2-cache-entry-size to iotest 137, Alberto Garcia, 2018/01/26
- [Qemu-block] [PATCH v3 27/39] qcow2: Update qcow2_update_snapshot_refcount() to support L2 slices, Alberto Garcia, 2018/01/26
- [Qemu-block] [PATCH v3 04/39] qcow2: Remove BDS parameter from qcow2_cache_get_table_idx(), Alberto Garcia, 2018/01/26