[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH V5 0/2] block/iscsi: allow caching of the allocation
From: |
Peter Lieven |
Subject: |
[Qemu-devel] [PATCH V5 0/2] block/iscsi: allow caching of the allocation map |
Date: |
Mon, 18 Jul 2016 10:52:18 +0200 |
until now the allocation map was used only as a hint if a cluster
is allocated or not. If a block was not allocated (or Qemu had
no info about the allocation status) a get_block_status call was
issued to check the allocation status and possibly avoid
a subsequent read of unallocated sectors. If a block known to be
allocated the get_block_status call was omitted. In the other case
a get_block_status call was issued before every read to avoid
the necessity for a consistent allocation map. To avoid the
potential overhead of calling get_block_status for each and
every read request this took only place for the bigger requests.
This patch enhances this mechanism to cache the allocation
status and avoid calling get_block_status for blocks where
the allocation status has been queried before. This allows
for bypassing the read request even for smaller requests and
additionally omits calling get_block_status for known to be
unallocated blocks.
History:
v4->v5: - fix rounding if clusters are expanded [Paolo]
- Remove the checking for nb_clusters > 0 as bitmap_set and
bitmap_clear can both handle nr == 0.
- fixed comment in iscsi_allocmap_set_unallocated (third -> fifth
argument)
v3->v4: - added comment to iscsi_allocmap_set_unallocated [Paolo]
- rebased to current master
v2->v3: - fix wording errors [Fam]
- reinit allocmap only if allocmap is present in
bdrv_reopen_commit
v1->v2: - add more comments [Fam]
- free allocmap if allocation of allocmap_valid fails [Fam]
- fix indent and whitespace errors [Fam]
- account for cache mode changes on reopen
Peter Lieven (2):
block/iscsi: fix rounding in iscsi_allocationmap_set
block/iscsi: allow caching of the allocation map
block/iscsi.c | 248 +++++++++++++++++++++++++++++++++++++++++++++-------------
1 file changed, 192 insertions(+), 56 deletions(-)
--
1.9.1
- [Qemu-devel] [PATCH V5 0/2] block/iscsi: allow caching of the allocation map,
Peter Lieven <=