Message ID | 808d7f54a5742f34d467a6293f6fff8fefbc6d15.1316782367.git.quintela@redhat.com |
---|---|
State | New |
Headers | show |
On 09/23/2011 07:57 AM, Juan Quintela wrote: > This will allows us to hide the status values. > > Signed-off-by: Juan Quintela<quintela@redhat.com> > --- > migration.c | 4 ++-- > migration.h | 2 +- > ui/spice-core.c | 4 +--- > 3 files changed, 4 insertions(+), 6 deletions(-) > > diff --git a/migration.c b/migration.c > index ea50a6f..580f546 100644 > --- a/migration.c > +++ b/migration.c > @@ -358,9 +358,9 @@ void remove_migration_state_change_notifier(Notifier *notify) > notifier_list_remove(&migration_state_notifiers, notify); > } > > -int get_migration_state(void) > +bool migration_has_finished(void) > { > - return current_migration->state; > + return current_migration->state == MIG_STATE_COMPLETED; > } > > void migrate_fd_connect(MigrationState *s) > diff --git a/migration.h b/migration.h > index f1a7452..6641a26 100644 > --- a/migration.h > +++ b/migration.h > @@ -84,7 +84,7 @@ void migrate_fd_connect(MigrationState *s); > > void add_migration_state_change_notifier(Notifier *notify); > void remove_migration_state_change_notifier(Notifier *notify); > -int get_migration_state(void); > +bool migration_has_finished(void); > > uint64_t ram_bytes_remaining(void); > uint64_t ram_bytes_transferred(void); > diff --git a/ui/spice-core.c b/ui/spice-core.c > index 3cbc721..1202993 100644 > --- a/ui/spice-core.c > +++ b/ui/spice-core.c > @@ -447,9 +447,7 @@ void do_info_spice(Monitor *mon, QObject **ret_data) > > static void migration_state_notifier(Notifier *notifier, void *data) > { > - int state = get_migration_state(); > - > - if (state == MIG_STATE_COMPLETED) { > + if (migration_has_finished()) { > #if SPICE_SERVER_VERSION>= 0x000701 /* 0.7.1 */ > spice_server_migrate_switch(spice_server); > #endif I think the bug here is migration_state_notifier. It should take an additional argument of MigrationState. Otherwise, how does this code work with FT? Regards, Anthony Liguori
Anthony Liguori <anthony@codemonkey.ws> wrote: > On 09/23/2011 07:57 AM, Juan Quintela wrote: >> This will allows us to hide the status values. >> >> --- a/ui/spice-core.c >> +++ b/ui/spice-core.c >> @@ -447,9 +447,7 @@ void do_info_spice(Monitor *mon, QObject **ret_data) >> >> static void migration_state_notifier(Notifier *notifier, void *data) >> { >> - int state = get_migration_state(); >> - >> - if (state == MIG_STATE_COMPLETED) { >> + if (migration_has_finished()) { >> #if SPICE_SERVER_VERSION>= 0x000701 /* 0.7.1 */ >> spice_server_migrate_switch(spice_server); >> #endif > > I think the bug here is migration_state_notifier. It should take an > additional argument of MigrationState. Otherwise, how does this code > work with FT? Thinking about it, we need to pass MigrationState and export the function that see if migration has finished (otherwise we also need to export all STATE definitions, or worse, the whole MigrationState definition. Moving to have a function bool migration_has_finished(MIgrationState *s); That does the obvious thing. What do you think? Later, Juan.
On 10/05/2011 07:24 AM, Juan Quintela wrote: > Anthony Liguori<anthony@codemonkey.ws> wrote: >> On 09/23/2011 07:57 AM, Juan Quintela wrote: >>> This will allows us to hide the status values. >>> >>> --- a/ui/spice-core.c >>> +++ b/ui/spice-core.c >>> @@ -447,9 +447,7 @@ void do_info_spice(Monitor *mon, QObject **ret_data) >>> >>> static void migration_state_notifier(Notifier *notifier, void *data) >>> { >>> - int state = get_migration_state(); >>> - >>> - if (state == MIG_STATE_COMPLETED) { >>> + if (migration_has_finished()) { >>> #if SPICE_SERVER_VERSION>= 0x000701 /* 0.7.1 */ >>> spice_server_migrate_switch(spice_server); >>> #endif >> >> I think the bug here is migration_state_notifier. It should take an >> additional argument of MigrationState. Otherwise, how does this code >> work with FT? > > Thinking about it, we need to pass MigrationState and export the > function that see if migration has finished (otherwise we also need to > export all STATE definitions, or worse, the whole MigrationState > definition. > > Moving to have a function > > bool migration_has_finished(MIgrationState *s); > > That does the obvious thing. > > What do you think? Yeah, that was what I was advocating. Regards, Anthony Liguori > > Later, Juan.
diff --git a/migration.c b/migration.c index ea50a6f..580f546 100644 --- a/migration.c +++ b/migration.c @@ -358,9 +358,9 @@ void remove_migration_state_change_notifier(Notifier *notify) notifier_list_remove(&migration_state_notifiers, notify); } -int get_migration_state(void) +bool migration_has_finished(void) { - return current_migration->state; + return current_migration->state == MIG_STATE_COMPLETED; } void migrate_fd_connect(MigrationState *s) diff --git a/migration.h b/migration.h index f1a7452..6641a26 100644 --- a/migration.h +++ b/migration.h @@ -84,7 +84,7 @@ void migrate_fd_connect(MigrationState *s); void add_migration_state_change_notifier(Notifier *notify); void remove_migration_state_change_notifier(Notifier *notify); -int get_migration_state(void); +bool migration_has_finished(void); uint64_t ram_bytes_remaining(void); uint64_t ram_bytes_transferred(void); diff --git a/ui/spice-core.c b/ui/spice-core.c index 3cbc721..1202993 100644 --- a/ui/spice-core.c +++ b/ui/spice-core.c @@ -447,9 +447,7 @@ void do_info_spice(Monitor *mon, QObject **ret_data) static void migration_state_notifier(Notifier *notifier, void *data) { - int state = get_migration_state(); - - if (state == MIG_STATE_COMPLETED) { + if (migration_has_finished()) { #if SPICE_SERVER_VERSION >= 0x000701 /* 0.7.1 */ spice_server_migrate_switch(spice_server); #endif
This will allows us to hide the status values. Signed-off-by: Juan Quintela <quintela@redhat.com> --- migration.c | 4 ++-- migration.h | 2 +- ui/spice-core.c | 4 +--- 3 files changed, 4 insertions(+), 6 deletions(-)