summaryrefslogtreecommitdiff
path: root/qmp-commands.hx
diff options
context:
space:
mode:
authorPaolo Bonzini <pbonzini@redhat.com>2012-10-18 16:49:28 +0200
committerKevin Wolf <kwolf@redhat.com>2012-10-24 10:26:22 +0200
commitb952b5589a36114e06201c0d2e82c293dbad2b1f (patch)
treec1ea734e0c3539c345a25a19844fd6bc66e46c7f /qmp-commands.hx
parent3bd293c3fdc8b4052b9fc357e0b28cba20e73099 (diff)
mirror: add support for on-source-error/on-target-error
Error management is important for mirroring; otherwise, an error on the target (even something as "innocent" as ENOSPC) requires to start again with a full copy. Similar to on_read_error/on_write_error, two separate knobs are provided for on_source_error (reads) and on_target_error (writes). The default is 'report' for both. The 'ignore' policy will leave the sector dirty, so that it will be retried later. Thus, it will not cause corruption. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Diffstat (limited to 'qmp-commands.hx')
-rw-r--r--qmp-commands.hx8
1 files changed, 7 insertions, 1 deletions
diff --git a/qmp-commands.hx b/qmp-commands.hx
index 614baea784..c31312f8ef 100644
--- a/qmp-commands.hx
+++ b/qmp-commands.hx
@@ -937,7 +937,8 @@ EQMP
{
.name = "drive-mirror",
- .args_type = "sync:s,device:B,target:s,speed:i?,mode:s?,format:s?",
+ .args_type = "sync:s,device:B,target:s,speed:i?,mode:s?,format:s?,"
+ "on-source-error:s?,on-target-error:s?",
.mhandler.cmd_new = qmp_marshal_input_drive_mirror,
},
@@ -965,6 +966,11 @@ Arguments:
possibilities include "full" for all the disk, "top" for only the sectors
allocated in the topmost image, or "none" to only replicate new I/O
(MirrorSyncMode).
+- "on-source-error": the action to take on an error on the source
+ (BlockdevOnError, default 'report')
+- "on-target-error": the action to take on an error on the target
+ (BlockdevOnError, default 'report')
+
Example: