mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-12-23 06:05:27 +00:00
qemu: command: Generate commandline of iothread objects JSON
The commandline generator for 'iothread' objects has a private implementation of the properties. Convert it to JSON so that it can be later validated. Signed-off-by: Peter Krempa <pkrempa@redhat.com> Reviewed-by: Ján Tomko <jtomko@redhat.com>
This commit is contained in:
parent
9d5a668d4a
commit
ba2593bddc
@ -7270,15 +7270,19 @@ qemuBuildIOThreadCommandLine(virCommandPtr cmd,
|
|||||||
if (def->niothreadids == 0)
|
if (def->niothreadids == 0)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
/* Create iothread objects using the defined iothreadids list
|
|
||||||
* and the defined id and name from the list. These may be used
|
|
||||||
* by a disk definition which will associate to an iothread by
|
|
||||||
* supplying a value of an id from the list
|
|
||||||
*/
|
|
||||||
for (i = 0; i < def->niothreadids; i++) {
|
for (i = 0; i < def->niothreadids; i++) {
|
||||||
|
g_autoptr(virJSONValue) props = NULL;
|
||||||
|
g_auto(virBuffer) buf = VIR_BUFFER_INITIALIZER;
|
||||||
|
g_autofree char *alias = g_strdup_printf("iothread%u", def->iothreadids[i]->iothread_id);
|
||||||
|
|
||||||
|
if (qemuMonitorCreateObjectProps(&props, "iothread", alias, NULL) < 0)
|
||||||
|
return -1;
|
||||||
|
|
||||||
|
if (virQEMUBuildObjectCommandlineFromJSON(&buf, props) < 0)
|
||||||
|
return -1;
|
||||||
|
|
||||||
virCommandAddArg(cmd, "-object");
|
virCommandAddArg(cmd, "-object");
|
||||||
virCommandAddArgFormat(cmd, "iothread,id=iothread%u",
|
virCommandAddArgBuffer(cmd, &buf);
|
||||||
def->iothreadids[i]->iothread_id);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
Loading…
Reference in New Issue
Block a user