Message ID | 1381322488-18558-1-git-send-email-mreitz@redhat.com |
---|---|
State | New |
Headers | show |
Am 09.10.2013 um 14:41 hat Max Reitz geschrieben: > In qcow2_write_compressed, if the compression fails, a normal cluster is > written to disk. This is done through bdrv_write on the qcow2 BDS > itself (using the guest offset), thus it is wrong to do a metadata > overlap check before. > > Signed-off-by: Max Reitz <mreitz@redhat.com> Thanks, applied to the block branch. Kevin
diff --git a/block/qcow2.c b/block/qcow2.c index d59ecbd..dc0b60e 100644 --- a/block/qcow2.c +++ b/block/qcow2.c @@ -1738,14 +1738,6 @@ static int qcow2_write_compressed(BlockDriverState *bs, int64_t sector_num, if (ret != Z_STREAM_END || out_len >= s->cluster_size) { /* could not compress: write normal cluster */ - - ret = qcow2_pre_write_overlap_check(bs, QCOW2_OL_DEFAULT, - sector_num * BDRV_SECTOR_SIZE, - s->cluster_sectors * BDRV_SECTOR_SIZE); - if (ret < 0) { - goto fail; - } - ret = bdrv_write(bs, sector_num, buf, s->cluster_sectors); if (ret < 0) { goto fail;
In qcow2_write_compressed, if the compression fails, a normal cluster is written to disk. This is done through bdrv_write on the qcow2 BDS itself (using the guest offset), thus it is wrong to do a metadata overlap check before. Signed-off-by: Max Reitz <mreitz@redhat.com> --- block/qcow2.c | 8 -------- 1 file changed, 8 deletions(-)