From: Kevin Wolf Date: Mon, 6 Mar 2017 15:12:44 +0000 (+0100) Subject: mirror: Fix error path for dirty bitmap creation X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=88f9d1b3d2fa8df276b2f75dcbd7fb78ed08be20;p=qemu.git mirror: Fix error path for dirty bitmap creation mirror_top_bs must be removed from the graph again when creating the dirty bitmap fails. Signed-off-by: Kevin Wolf Reviewed-by: Fam Zheng Reviewed-by: Eric Blake --- diff --git a/block/mirror.c b/block/mirror.c index 001b5f0a15..f24dc51385 100644 --- a/block/mirror.c +++ b/block/mirror.c @@ -1197,10 +1197,7 @@ static void mirror_start_job(const char *job_id, BlockDriverState *bs, s->dirty_bitmap = bdrv_create_dirty_bitmap(bs, granularity, NULL, errp); if (!s->dirty_bitmap) { - g_free(s->replaces); - blk_unref(s->target); - block_job_unref(&s->common); - return; + goto fail; } /* Required permissions are already taken with blk_new() */