mirror of https://github.com/xqemu/xqemu.git
migration: Remove old MigrationParams
Not used anymore after moving block migration to use capabilities. Signed-off-by: Juan Quintela <quintela@redhat.com> Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com> Reviewed-by: zhanghailiang <zhang.zhanghailiang@huawei.com> Reviewed-by: Peter Xu <peterx@redhat.com>
This commit is contained in:
parent
ce7c817c85
commit
a0762d9e34
|
@ -38,10 +38,6 @@
|
||||||
#define QEMU_VM_COMMAND 0x08
|
#define QEMU_VM_COMMAND 0x08
|
||||||
#define QEMU_VM_SECTION_FOOTER 0x7e
|
#define QEMU_VM_SECTION_FOOTER 0x7e
|
||||||
|
|
||||||
struct MigrationParams {
|
|
||||||
bool unused; /* C doesn't allow empty structs */
|
|
||||||
};
|
|
||||||
|
|
||||||
/* Messages sent on the return path from destination to source */
|
/* Messages sent on the return path from destination to source */
|
||||||
enum mig_rp_message_type {
|
enum mig_rp_message_type {
|
||||||
MIG_RP_MSG_INVALID = 0, /* Must be 0 */
|
MIG_RP_MSG_INVALID = 0, /* Must be 0 */
|
||||||
|
@ -109,12 +105,10 @@ struct MigrationState
|
||||||
QEMUBH *cleanup_bh;
|
QEMUBH *cleanup_bh;
|
||||||
QEMUFile *to_dst_file;
|
QEMUFile *to_dst_file;
|
||||||
|
|
||||||
/* New style params from 'migrate-set-parameters' */
|
/* params from 'migrate-set-parameters' */
|
||||||
MigrationParameters parameters;
|
MigrationParameters parameters;
|
||||||
|
|
||||||
int state;
|
int state;
|
||||||
/* Old style params from 'migrate' command */
|
|
||||||
MigrationParams params;
|
|
||||||
|
|
||||||
/* State related to return path */
|
/* State related to return path */
|
||||||
struct {
|
struct {
|
||||||
|
@ -207,7 +201,7 @@ void migrate_fd_connect(MigrationState *s);
|
||||||
|
|
||||||
void add_migration_state_change_notifier(Notifier *notify);
|
void add_migration_state_change_notifier(Notifier *notify);
|
||||||
void remove_migration_state_change_notifier(Notifier *notify);
|
void remove_migration_state_change_notifier(Notifier *notify);
|
||||||
MigrationState *migrate_init(const MigrationParams *params);
|
MigrationState *migrate_init(void);
|
||||||
bool migration_is_blocked(Error **errp);
|
bool migration_is_blocked(Error **errp);
|
||||||
bool migration_in_setup(MigrationState *);
|
bool migration_in_setup(MigrationState *);
|
||||||
bool migration_is_idle(void);
|
bool migration_is_idle(void);
|
||||||
|
|
|
@ -37,7 +37,6 @@ typedef int LoadStateHandler(QEMUFile *f, void *opaque, int version_id);
|
||||||
|
|
||||||
typedef struct SaveVMHandlers {
|
typedef struct SaveVMHandlers {
|
||||||
/* This runs inside the iothread lock. */
|
/* This runs inside the iothread lock. */
|
||||||
void (*set_params)(const MigrationParams *params, void * opaque);
|
|
||||||
SaveStateHandler *save_state;
|
SaveStateHandler *save_state;
|
||||||
|
|
||||||
void (*cleanup)(void *opaque);
|
void (*cleanup)(void *opaque);
|
||||||
|
|
|
@ -49,7 +49,6 @@ typedef struct MemoryRegion MemoryRegion;
|
||||||
typedef struct MemoryRegionCache MemoryRegionCache;
|
typedef struct MemoryRegionCache MemoryRegionCache;
|
||||||
typedef struct MemoryRegionSection MemoryRegionSection;
|
typedef struct MemoryRegionSection MemoryRegionSection;
|
||||||
typedef struct MigrationIncomingState MigrationIncomingState;
|
typedef struct MigrationIncomingState MigrationIncomingState;
|
||||||
typedef struct MigrationParams MigrationParams;
|
|
||||||
typedef struct MigrationState MigrationState;
|
typedef struct MigrationState MigrationState;
|
||||||
typedef struct Monitor Monitor;
|
typedef struct Monitor Monitor;
|
||||||
typedef struct MonitorDef MonitorDef;
|
typedef struct MonitorDef MonitorDef;
|
||||||
|
|
|
@ -102,8 +102,7 @@ enum qemu_vm_cmd {
|
||||||
#define MAX_VM_CMD_PACKAGED_SIZE (1ul << 24)
|
#define MAX_VM_CMD_PACKAGED_SIZE (1ul << 24)
|
||||||
|
|
||||||
bool qemu_savevm_state_blocked(Error **errp);
|
bool qemu_savevm_state_blocked(Error **errp);
|
||||||
void qemu_savevm_state_begin(QEMUFile *f,
|
void qemu_savevm_state_begin(QEMUFile *f);
|
||||||
const MigrationParams *params);
|
|
||||||
void qemu_savevm_state_header(QEMUFile *f);
|
void qemu_savevm_state_header(QEMUFile *f);
|
||||||
int qemu_savevm_state_iterate(QEMUFile *f, bool postcopy);
|
int qemu_savevm_state_iterate(QEMUFile *f, bool postcopy);
|
||||||
void qemu_savevm_state_cleanup(void);
|
void qemu_savevm_state_cleanup(void);
|
||||||
|
|
|
@ -348,7 +348,7 @@ static int colo_do_checkpoint_transaction(MigrationState *s,
|
||||||
/* Disable block migration */
|
/* Disable block migration */
|
||||||
migrate_set_block_enabled(false, &local_err);
|
migrate_set_block_enabled(false, &local_err);
|
||||||
qemu_savevm_state_header(fb);
|
qemu_savevm_state_header(fb);
|
||||||
qemu_savevm_state_begin(fb, &s->params);
|
qemu_savevm_state_begin(fb);
|
||||||
qemu_mutex_lock_iothread();
|
qemu_mutex_lock_iothread();
|
||||||
qemu_savevm_state_complete_precopy(fb, false);
|
qemu_savevm_state_complete_precopy(fb, false);
|
||||||
qemu_mutex_unlock_iothread();
|
qemu_mutex_unlock_iothread();
|
||||||
|
|
|
@ -1118,7 +1118,7 @@ bool migration_is_idle(void)
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
MigrationState *migrate_init(const MigrationParams *params)
|
MigrationState *migrate_init(void)
|
||||||
{
|
{
|
||||||
MigrationState *s = migrate_get_current();
|
MigrationState *s = migrate_get_current();
|
||||||
|
|
||||||
|
@ -1132,7 +1132,6 @@ MigrationState *migrate_init(const MigrationParams *params)
|
||||||
s->cleanup_bh = 0;
|
s->cleanup_bh = 0;
|
||||||
s->to_dst_file = NULL;
|
s->to_dst_file = NULL;
|
||||||
s->state = MIGRATION_STATUS_NONE;
|
s->state = MIGRATION_STATUS_NONE;
|
||||||
s->params = *params;
|
|
||||||
s->rp_state.from_dst_file = NULL;
|
s->rp_state.from_dst_file = NULL;
|
||||||
s->rp_state.error = false;
|
s->rp_state.error = false;
|
||||||
s->mbps = 0.0;
|
s->mbps = 0.0;
|
||||||
|
@ -1221,7 +1220,6 @@ void qmp_migrate(const char *uri, bool has_blk, bool blk,
|
||||||
{
|
{
|
||||||
Error *local_err = NULL;
|
Error *local_err = NULL;
|
||||||
MigrationState *s = migrate_get_current();
|
MigrationState *s = migrate_get_current();
|
||||||
MigrationParams params;
|
|
||||||
const char *p;
|
const char *p;
|
||||||
|
|
||||||
if (migration_is_setup_or_active(s->state) ||
|
if (migration_is_setup_or_active(s->state) ||
|
||||||
|
@ -1257,7 +1255,7 @@ void qmp_migrate(const char *uri, bool has_blk, bool blk,
|
||||||
migrate_set_block_incremental(s, true);
|
migrate_set_block_incremental(s, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
s = migrate_init(¶ms);
|
s = migrate_init();
|
||||||
|
|
||||||
if (strstart(uri, "tcp:", &p)) {
|
if (strstart(uri, "tcp:", &p)) {
|
||||||
tcp_start_outgoing_migration(s, p, &local_err);
|
tcp_start_outgoing_migration(s, p, &local_err);
|
||||||
|
@ -1981,7 +1979,7 @@ static void *migration_thread(void *opaque)
|
||||||
qemu_savevm_send_postcopy_advise(s->to_dst_file);
|
qemu_savevm_send_postcopy_advise(s->to_dst_file);
|
||||||
}
|
}
|
||||||
|
|
||||||
qemu_savevm_state_begin(s->to_dst_file, &s->params);
|
qemu_savevm_state_begin(s->to_dst_file);
|
||||||
|
|
||||||
s->setup_time = qemu_clock_get_ms(QEMU_CLOCK_HOST) - setup_start;
|
s->setup_time = qemu_clock_get_ms(QEMU_CLOCK_HOST) - setup_start;
|
||||||
migrate_set_state(&s->state, MIGRATION_STATUS_SETUP,
|
migrate_set_state(&s->state, MIGRATION_STATUS_SETUP,
|
||||||
|
|
|
@ -966,20 +966,12 @@ void qemu_savevm_state_header(QEMUFile *f)
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void qemu_savevm_state_begin(QEMUFile *f,
|
void qemu_savevm_state_begin(QEMUFile *f)
|
||||||
const MigrationParams *params)
|
|
||||||
{
|
{
|
||||||
SaveStateEntry *se;
|
SaveStateEntry *se;
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
trace_savevm_state_begin();
|
trace_savevm_state_begin();
|
||||||
QTAILQ_FOREACH(se, &savevm_state.handlers, entry) {
|
|
||||||
if (!se->ops || !se->ops->set_params) {
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
se->ops->set_params(params, se->opaque);
|
|
||||||
}
|
|
||||||
|
|
||||||
QTAILQ_FOREACH(se, &savevm_state.handlers, entry) {
|
QTAILQ_FOREACH(se, &savevm_state.handlers, entry) {
|
||||||
if (!se->ops || !se->ops->save_live_setup) {
|
if (!se->ops || !se->ops->save_live_setup) {
|
||||||
continue;
|
continue;
|
||||||
|
@ -1232,9 +1224,7 @@ void qemu_savevm_state_cleanup(void)
|
||||||
static int qemu_savevm_state(QEMUFile *f, Error **errp)
|
static int qemu_savevm_state(QEMUFile *f, Error **errp)
|
||||||
{
|
{
|
||||||
int ret;
|
int ret;
|
||||||
MigrationParams params = {
|
MigrationState *ms = migrate_init();
|
||||||
};
|
|
||||||
MigrationState *ms = migrate_init(¶ms);
|
|
||||||
MigrationStatus status;
|
MigrationStatus status;
|
||||||
ms->to_dst_file = f;
|
ms->to_dst_file = f;
|
||||||
|
|
||||||
|
@ -1251,7 +1241,7 @@ static int qemu_savevm_state(QEMUFile *f, Error **errp)
|
||||||
|
|
||||||
qemu_mutex_unlock_iothread();
|
qemu_mutex_unlock_iothread();
|
||||||
qemu_savevm_state_header(f);
|
qemu_savevm_state_header(f);
|
||||||
qemu_savevm_state_begin(f, ¶ms);
|
qemu_savevm_state_begin(f);
|
||||||
qemu_mutex_lock_iothread();
|
qemu_mutex_lock_iothread();
|
||||||
|
|
||||||
while (qemu_file_get_error(f) == 0) {
|
while (qemu_file_get_error(f) == 0) {
|
||||||
|
|
Loading…
Reference in New Issue