Re: [Qemu-devel] [PATCH v3 6/6] vmdk: add bdrv_co_write_zeroes

2013-04-25 Thread Stefan Hajnoczi
On Wed, Apr 24, 2013 at 08:44:35PM +0800, Fam Zheng wrote: > @@ -905,6 +905,13 @@ static int get_cluster_offset(BlockDriverState *bs, > l2_index = ((offset >> 9) / extent->cluster_sectors) % extent->l2_size; > *cluster_offset = le32_to_cpu(l2_table[l2_index]); > > +if (m_data) { > +

[Qemu-devel] [PATCH v3 6/6] vmdk: add bdrv_co_write_zeroes

2013-04-24 Thread Fam Zheng
Use special offset to write zeroes efficiently, when zeroed-grain GTE is available. If zero-write an allocated cluster, cluster is leaked because its offset pointer is overwritten by "0x1". Signed-off-by: Fam Zheng --- block/vmdk.c | 77 +--