@@ -26,6 +26,56 @@ Example:
Note: If action is "stop", a STOP event will eventually follow the
BLOCK_IO_ERROR event.
+MIGRATION_CANCELED
+------------------
+
+Emitted when migration is canceled. This is emitted in the source.
+Target will emit MIGRATION_CANCELED (no way to differentiate a FAILED
+and CANCELED migration).
+
+Data: None
+
+Example:
+
+{ "event": "MIGRATION_CANCELED",
+ "timestamp": {"seconds": 1274687575, "microseconds": 592483} }
+
+MIGRATION_ENDED
+---------------
+
+Emitted when migration starts (both in source and target)
+
+Data: None
+
+Example:
+
+{ "event": "MIGRATION_ENDED",
+ "timestamp": {"seconds": 1274687575, "microseconds": 592483} }
+
+MIGRATION_FAILED
+----------------
+
+Emitted when migration fails (both is source and target).
+
+Data: None
+
+Example:
+
+{ "event": "MIGRATION_FAILED",
+ "timestamp": {"seconds": 1274687575, "microseconds": 592483} }
+
+MIGRATION_STARTED
+-----------------
+
+Emitted when migration starts (both in source and target).
+
+Data: None
+
+Example:
+
+{ "event": "MIGRATION_STARTED",
+ "timestamp": {"seconds": 1274687575, "microseconds": 592483} }
+
RESET
-----
@@ -444,6 +444,18 @@ void monitor_protocol_event(MonitorEvent event, QObject *data)
case QEVENT_WATCHDOG:
event_name = "WATCHDOG";
break;
+ case QEVENT_MIGRATION_STARTED:
+ event_name = "MIGRATION_STARTED";
+ break;
+ case QEVENT_MIGRATION_ENDED:
+ event_name = "MIGRATION_ENDED";
+ break;
+ case QEVENT_MIGRATION_FAILED:
+ event_name = "MIGRATION_FAILED";
+ break;
+ case QEVENT_MIGRATION_CANCELED:
+ event_name = "MIGRATION_CANCELED";
+ break;
default:
abort();
break;
@@ -28,6 +28,10 @@ typedef enum MonitorEvent {
QEVENT_BLOCK_IO_ERROR,
QEVENT_RTC_CHANGE,
QEVENT_WATCHDOG,
+ QEVENT_MIGRATION_STARTED,
+ QEVENT_MIGRATION_ENDED,
+ QEVENT_MIGRATION_FAILED,
+ QEVENT_MIGRATION_CANCELED,
QEVENT_MAX,
} MonitorEvent;
They are emitted when migration starts, ends, has a failure or is canceled. Signed-off-by: Juan Quintela <quintela@redhat.com> --- QMP/qmp-events.txt | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++ monitor.c | 12 ++++++++++++ monitor.h | 4 ++++ 3 files changed, 66 insertions(+), 0 deletions(-)