aboutsummaryrefslogtreecommitdiff
path: root/block.c
diff options
context:
space:
mode:
authorMax Reitz <mreitz@redhat.com>2019-02-01 20:29:34 +0100
committerMax Reitz <mreitz@redhat.com>2019-02-25 15:11:27 +0100
commit62a01a27f7f67853553679201e8617ccd28e965b (patch)
treed8db504a9fecdb54465bca051e14cfd283cf4080 /block.c
parent1e47cb7f52541a82148da37eb004a0c68be4b865 (diff)
block: BDS options may lack the "driver" option
When BDSs are created by qemu itself (e.g. as filters in block jobs), they may not have a "driver" option in their options QDict. When generating a json:{} filename, however, it must always be present. Signed-off-by: Max Reitz <mreitz@redhat.com> Reviewed-by: Alberto Garcia <berto@igalia.com> Message-id: 20190201192935.18394-31-mreitz@redhat.com Signed-off-by: Max Reitz <mreitz@redhat.com>
Diffstat (limited to 'block.c')
-rw-r--r--block.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/block.c b/block.c
index 9d9929e1a2..35e78e2172 100644
--- a/block.c
+++ b/block.c
@@ -5618,6 +5618,12 @@ static bool append_strong_runtime_options(QDict *d, BlockDriverState *bs)
}
}
+ if (!qdict_haskey(d, "driver")) {
+ /* Drivers created with bdrv_new_open_driver() may not have a
+ * @driver option. Add it here. */
+ qdict_put_str(d, "driver", bs->drv->format_name);
+ }
+
return found_any;
}