From: Kevin Wolf <kw...@redhat.com> Instead of manually building a list of all options from BDRVQcowState values just reuse the options that were used to open the image. qcow2_open() won't fully use all of the options in the QDict, but that's okay.
This fixes all of the driver-specific options in qcow2, except for lazy-refcounts, which was special cased before. Signed-off-by: Kevin Wolf <kw...@redhat.com> Reviewed-by: Max Reitz <mre...@redhat.com> Signed-off-by: Stefan Hajnoczi <stefa...@redhat.com> --- block/qcow2.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/block/qcow2.c b/block/qcow2.c index b5b1e8c..ec23cc4 100644 --- a/block/qcow2.c +++ b/block/qcow2.c @@ -1178,11 +1178,8 @@ static void qcow2_invalidate_cache(BlockDriverState *bs) bdrv_invalidate_cache(bs->file); - options = qdict_new(); - qdict_put(options, QCOW2_OPT_LAZY_REFCOUNTS, - qbool_from_int(s->use_lazy_refcounts)); - memset(s, 0, sizeof(BDRVQcowState)); + options = qdict_clone_shallow(bs->options); qcow2_open(bs, options, flags, NULL); QDECREF(options); -- 1.8.5.3