diff --git a/migration.c b/migration.c index 8dbe8df109..31b6741c7d 100644 --- a/migration.c +++ b/migration.c @@ -132,12 +132,12 @@ free_migrate_state: return -1; } +static void migrate_fd_cancel(MigrationState *s); + int do_migrate_cancel(Monitor *mon, const QDict *qdict, QObject **ret_data) { - MigrationState *s = current_migration; - - if (s && s->state == MIG_STATE_ACTIVE) { - s->cancel(s); + if (current_migration) { + migrate_fd_cancel(current_migration); } return 0; } @@ -488,7 +488,6 @@ static MigrationState *migrate_new(Monitor *mon, int64_t bandwidth_limit, { MigrationState *s = g_malloc0(sizeof(*s)); - s->cancel = migrate_fd_cancel; s->blk = blk; s->shared = inc; s->mon = NULL; diff --git a/migration.h b/migration.h index 6be3623baf..e1299b9423 100644 --- a/migration.h +++ b/migration.h @@ -38,7 +38,6 @@ struct MigrationState int (*get_error)(MigrationState *s); int (*close)(MigrationState *s); int (*write)(MigrationState *s, const void *buff, size_t size); - void (*cancel)(MigrationState *s); void *opaque; int blk; int shared;