Ideally it should be possible to zero individual subclusters using this function, but this is currently not implemented.
Signed-off-by: Alberto Garcia <be...@igalia.com> --- block/qcow2.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/block/qcow2.c b/block/qcow2.c index 242001afa2..0267722065 100644 --- a/block/qcow2.c +++ b/block/qcow2.c @@ -3754,6 +3754,12 @@ static coroutine_fn int qcow2_co_pwrite_zeroes(BlockDriverState *bs, qemu_co_mutex_unlock(&s->lock); return -ENOTSUP; } + /* TODO: allow zeroing separate subclusters, we only allow + * zeroing full clusters at the moment. */ + if (nr != bytes) { + qemu_co_mutex_unlock(&s->lock); + return -ENOTSUP; + } if (type != QCOW2_SUBCLUSTER_UNALLOCATED_PLAIN && type != QCOW2_SUBCLUSTER_UNALLOCATED_ALLOC && type != QCOW2_SUBCLUSTER_ZERO_PLAIN && -- 2.20.1