migration: finalize current_migration object

current_migration has .instance_finalize callback, but it is not
called, because nobody unrefs current_migration. Fix that.

Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
Reviewed-by: Peter Xu <peterx@redhat.com>
Reviewed-by: Juan Quintela <quintela@redhat.com>
Signed-off-by: Juan Quintela <quintela@redhat.com>
master
Vladimir Sementsov-Ogievskiy 2017-12-28 12:16:16 +03:00 committed by Juan Quintela
parent bae416e5ba
commit 1f8956041a
3 changed files with 7 additions and 0 deletions

View File

@ -44,6 +44,7 @@ void dump_vmstate_json_to_file(FILE *out_fp);
/* migration/migration.c */
void migration_object_init(void);
void migration_object_finalize(void);
void qemu_start_incoming_migration(const char *uri, Error **errp);
bool migration_is_idle(void);
void add_migration_state_change_notifier(Notifier *notify);

View File

@ -132,6 +132,11 @@ void migration_object_init(void)
}
}
void migration_object_finalize(void)
{
object_unref(OBJECT(current_migration));
}
/* For outgoing */
MigrationState *migrate_get_current(void)
{

1
vl.c
View File

@ -4792,6 +4792,7 @@ int main(int argc, char **argv, char **envp)
monitor_cleanup();
qemu_chr_cleanup();
user_creatable_cleanup();
migration_object_finalize();
/* TODO: unref root container, check all devices are ok */
return 0;