diff options
author | Peter Lieven <pl@kamp.de> | 2015-04-16 16:08:33 +0200 |
---|---|---|
committer | Kevin Wolf <kwolf@redhat.com> | 2015-04-28 15:36:10 +0200 |
commit | 9eac3622a2b1159ab50b10540e822f3e58fdc383 (patch) | |
tree | 568b8fba392b00f43e014e621610fc5c2a81cbbd /block | |
parent | 03e40fef4678f9a42846c91a804b6d3c820e8b90 (diff) | |
download | qemu-9eac3622a2b1159ab50b10540e822f3e58fdc383.tar.gz qemu-9eac3622a2b1159ab50b10540e822f3e58fdc383.tar.bz2 qemu-9eac3622a2b1159ab50b10540e822f3e58fdc383.zip |
block/iscsi: use the allocationmap also if cache.direct=on
the allocationmap has only a hint character. The driver always
double checks that blocks marked unallocated in the cache are
still unallocated before taking the fast path and return zeroes.
So using the allocationmap is migration safe and can
also be enabled with cache.direct=on.
Signed-off-by: Peter Lieven <pl@kamp.de>
Message-id: 1429193313-4263-10-git-send-email-pl@kamp.de
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Diffstat (limited to 'block')
-rw-r--r-- | block/iscsi.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/block/iscsi.c b/block/iscsi.c index 8364f975ba..8fca1d32cb 100644 --- a/block/iscsi.c +++ b/block/iscsi.c @@ -1499,7 +1499,7 @@ static int iscsi_open(BlockDriverState *bs, QDict *options, int flags, iscsilun->bl.opt_unmap_gran * iscsilun->block_size <= 16 * 1024 * 1024) { iscsilun->cluster_sectors = (iscsilun->bl.opt_unmap_gran * iscsilun->block_size) >> BDRV_SECTOR_BITS; - if (iscsilun->lbprz && !(bs->open_flags & BDRV_O_NOCACHE)) { + if (iscsilun->lbprz) { iscsilun->allocationmap = iscsi_allocationmap_init(iscsilun); if (iscsilun->allocationmap == NULL) { ret = -ENOMEM; |