migration: Cleanup postcopy_preempt_setup()
Since we just dropped the only case where postcopy_preempt_setup() can return an error, it doesn't need a retval anymore because it never fails. Move the preempt check to the caller, preparing it to be used elsewhere to do nothing but as simple as kicking the async connection. Signed-off-by: Peter Xu <peterx@redhat.com> Reviewed-by: Juan Quintela <quintela@redhat.com> Signed-off-by: Juan Quintela <quintela@redhat.com>
This commit is contained in:
parent
d6f74fd12e
commit
fc063a7b8a
@ -4347,12 +4347,8 @@ void migrate_fd_connect(MigrationState *s, Error *error_in)
|
||||
}
|
||||
|
||||
/* This needs to be done before resuming a postcopy */
|
||||
if (postcopy_preempt_setup(s, &local_err)) {
|
||||
error_report_err(local_err);
|
||||
migrate_set_state(&s->state, MIGRATION_STATUS_SETUP,
|
||||
MIGRATION_STATUS_FAILED);
|
||||
migrate_fd_cleanup(s);
|
||||
return;
|
||||
if (migrate_postcopy_preempt()) {
|
||||
postcopy_preempt_setup(s);
|
||||
}
|
||||
|
||||
if (resume) {
|
||||
|
@ -1629,16 +1629,10 @@ int postcopy_preempt_wait_channel(MigrationState *s)
|
||||
return s->postcopy_qemufile_src ? 0 : -1;
|
||||
}
|
||||
|
||||
int postcopy_preempt_setup(MigrationState *s, Error **errp)
|
||||
void postcopy_preempt_setup(MigrationState *s)
|
||||
{
|
||||
if (!migrate_postcopy_preempt()) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* Kick an async task to connect */
|
||||
socket_send_channel_create(postcopy_preempt_send_channel_new, s);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void postcopy_pause_ram_fast_load(MigrationIncomingState *mis)
|
||||
|
@ -191,7 +191,7 @@ enum PostcopyChannels {
|
||||
};
|
||||
|
||||
void postcopy_preempt_new_channel(MigrationIncomingState *mis, QEMUFile *file);
|
||||
int postcopy_preempt_setup(MigrationState *s, Error **errp);
|
||||
void postcopy_preempt_setup(MigrationState *s);
|
||||
int postcopy_preempt_wait_channel(MigrationState *s);
|
||||
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user