aboutsummaryrefslogtreecommitdiff
path: root/hmp.c
diff options
context:
space:
mode:
authorPaolo Bonzini <pbonzini@redhat.com>2012-10-18 16:49:21 +0200
committerKevin Wolf <kwolf@redhat.com>2012-10-24 10:26:19 +0200
commitaeae883baf2377b714a41529f94905046fa058f3 (patch)
treec62538f24a70deb5abebbcca2589cdd30d375738 /hmp.c
parent65f4632243f526958aa1f6b3911add98329c3796 (diff)
downloadqemu-aeae883baf2377b714a41529f94905046fa058f3.zip
qemu-aeae883baf2377b714a41529f94905046fa058f3.tar.gz
qemu-aeae883baf2377b714a41529f94905046fa058f3.tar.bz2
block: add block-job-complete
While streaming can be dropped as soon as it progressed through the whole image, mirroring needs to be completed manually for two reasons: 1) so that management knows exactly when the VM switches to the target; 2) because for other use cases such as replication, we may leave the operation running for the whole life of the virtual machine. Add a new block job command that manually completes background operations. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Diffstat (limited to 'hmp.c')
-rw-r--r--hmp.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/hmp.c b/hmp.c
index 2b97982..574517a 100644
--- a/hmp.c
+++ b/hmp.c
@@ -990,6 +990,16 @@ void hmp_block_job_resume(Monitor *mon, const QDict *qdict)
hmp_handle_error(mon, &error);
}
+void hmp_block_job_complete(Monitor *mon, const QDict *qdict)
+{
+ Error *error = NULL;
+ const char *device = qdict_get_str(qdict, "device");
+
+ qmp_block_job_complete(device, &error);
+
+ hmp_handle_error(mon, &error);
+}
+
typedef struct MigrationStatus
{
QEMUTimer *timer;