diff options
author | Peter Lieven <pl@kamp.de> | 2016-07-18 10:52:20 +0200 |
---|---|---|
committer | Paolo Bonzini <pbonzini@redhat.com> | 2016-07-19 08:34:53 +0200 |
commit | e1123a3b40a1a9a625a29c8ed4debb7e206ea690 (patch) | |
tree | 1a7c9d98747dcaf59f9b2a295393bcfcd6e2aaa6 /target-i386/cpu.h | |
parent | eb36b953e0ebf4129b188a241fbc367062ac2e06 (diff) | |
download | qemu-e1123a3b40a1a9a625a29c8ed4debb7e206ea690.zip qemu-e1123a3b40a1a9a625a29c8ed4debb7e206ea690.tar.gz qemu-e1123a3b40a1a9a625a29c8ed4debb7e206ea690.tar.bz2 |
block/iscsi: allow caching of the allocation map
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.
Signed-off-by: Peter Lieven <pl@kamp.de>
Message-Id: <1468831940-15556-3-git-send-email-pl@kamp.de>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'target-i386/cpu.h')
0 files changed, 0 insertions, 0 deletions