Message ID | 1434505833-11234-11-git-send-email-quintela@redhat.com |
---|---|
State | New |
Headers | show |
On 06/16/2015 07:50 PM, Juan Quintela wrote: > We have one argument that tells us what event has happened. > > Signed-off-by: Juan Quintela <quintela@redhat.com> > > X3 > > Signed-off-by: Juan Quintela <quintela@redhat.com> Intentional double-S-o-b? > --- > docs/qmp/qmp-events.txt | 14 ++++++++++++++ > migration/migration.c | 2 ++ > qapi/event.json | 14 ++++++++++++++ > 3 files changed, 30 insertions(+) > > +Data: None. > + > + - "status": migration status > + See MigrationStatus in ~/qapi-scheme.json for possible values s/scheme/schema/ > +++ b/qapi/event.json > @@ -243,6 +243,20 @@ > { 'event': 'SPICE_MIGRATE_COMPLETED' } > > ## > +# @MIGRATION > +# > +# Emitted when a migration event happens > +# > +# @status: @MigrationStatus describing the current migration status. > +# If this field is not returned, no migration process > +# has been initiated Drop this second sentence. 'status' is emitted unconditionally (it is not marked optional). With those two changes, Reviewed-by: Eric Blake <eblake@redhat.com>
Eric Blake <eblake@redhat.com> wrote: > On 06/16/2015 07:50 PM, Juan Quintela wrote: >> We have one argument that tells us what event has happened. >> >> Signed-off-by: Juan Quintela <quintela@redhat.com> >> >> X3 >> >> Signed-off-by: Juan Quintela <quintela@redhat.com> > > Intentional double-S-o-b? No, merge artifact > >> --- >> docs/qmp/qmp-events.txt | 14 ++++++++++++++ >> migration/migration.c | 2 ++ >> qapi/event.json | 14 ++++++++++++++ >> 3 files changed, 30 insertions(+) >> > >> +Data: None. >> + >> + - "status": migration status >> + See MigrationStatus in ~/qapi-scheme.json for possible values > > s/scheme/schema/ fixed > > >> +++ b/qapi/event.json >> @@ -243,6 +243,20 @@ >> { 'event': 'SPICE_MIGRATE_COMPLETED' } >> >> ## >> +# @MIGRATION >> +# >> +# Emitted when a migration event happens >> +# >> +# @status: @MigrationStatus describing the current migration status. >> +# If this field is not returned, no migration process >> +# has been initiated > > Drop this second sentence. 'status' is emitted unconditionally (it is > not marked optional). > > With those two changes, > Reviewed-by: Eric Blake <eblake@redhat.com> fixed
diff --git a/docs/qmp/qmp-events.txt b/docs/qmp/qmp-events.txt index 4c13d48..3fe8cb7 100644 --- a/docs/qmp/qmp-events.txt +++ b/docs/qmp/qmp-events.txt @@ -473,6 +473,20 @@ Example: { "timestamp": {"seconds": 1290688046, "microseconds": 417172}, "event": "SPICE_MIGRATE_COMPLETED" } +MIGRATION +--------- + +Emitted when a migration event happens + +Data: None. + + - "status": migration status + See MigrationStatus in ~/qapi-scheme.json for possible values + +Example: + +{"timestamp": {"seconds": 1432121972, "microseconds": 744001}, + "event": "MIGRATION", "data": {"status": "completed"}} STOP ---- diff --git a/migration/migration.c b/migration/migration.c index b31c7f4..3637d36 100644 --- a/migration/migration.c +++ b/migration/migration.c @@ -26,6 +26,7 @@ #include "qmp-commands.h" #include "trace.h" #include "qapi/util.h" +#include "qapi-event.h" #define MAX_THROTTLE (32 << 20) /* Migration speed throttling */ @@ -506,6 +507,7 @@ void qmp_migrate_set_parameters(bool has_compress_level, static void migrate_set_state(MigrationState *s, int old_state, int new_state) { if (atomic_cmpxchg(&s->state, old_state, new_state) == old_state) { + qapi_event_send_migration(new_state, &error_abort); trace_migrate_set_state(new_state); } } diff --git a/qapi/event.json b/qapi/event.json index 378dda5..fe5e182 100644 --- a/qapi/event.json +++ b/qapi/event.json @@ -243,6 +243,20 @@ { 'event': 'SPICE_MIGRATE_COMPLETED' } ## +# @MIGRATION +# +# Emitted when a migration event happens +# +# @status: @MigrationStatus describing the current migration status. +# If this field is not returned, no migration process +# has been initiated +# +# Since: 2.4 +## +{ 'event': 'MIGRATION', + 'data': {'status': 'MigrationStatus'}} + +## # @ACPI_DEVICE_OST # # Emitted when guest executes ACPI _OST method.