migration: multifd_save_cleanup() can't fail, simplify
multifd_save_cleanup() takes an Error ** argument and returns an error code even though it can't actually fail. Its callers dutifully check for failure. Remove the useless argument and return value, and simplify the callers. Cc: Dr. David Alan Gilbert <dgilbert@redhat.com> Cc: Markus Armbruster <armbru@redhat.com> Signed-off-by: Fei Li <fli@suse.com> Reviewed-by: Juan Quintela <quintela@redhat.com> Message-Id: <20190113140849.38339-4-lifei1214@126.com> Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
This commit is contained in:
parent
49ed0d24a4
commit
1398b2e3fe
@ -1386,7 +1386,6 @@ static void migrate_fd_cleanup(void *opaque)
|
|||||||
qemu_savevm_state_cleanup();
|
qemu_savevm_state_cleanup();
|
||||||
|
|
||||||
if (s->to_dst_file) {
|
if (s->to_dst_file) {
|
||||||
Error *local_err = NULL;
|
|
||||||
QEMUFile *tmp;
|
QEMUFile *tmp;
|
||||||
|
|
||||||
trace_migrate_fd_cleanup();
|
trace_migrate_fd_cleanup();
|
||||||
@ -1397,9 +1396,7 @@ static void migrate_fd_cleanup(void *opaque)
|
|||||||
}
|
}
|
||||||
qemu_mutex_lock_iothread();
|
qemu_mutex_lock_iothread();
|
||||||
|
|
||||||
if (multifd_save_cleanup(&local_err) != 0) {
|
multifd_save_cleanup();
|
||||||
error_report_err(local_err);
|
|
||||||
}
|
|
||||||
qemu_mutex_lock(&s->qemu_file_lock);
|
qemu_mutex_lock(&s->qemu_file_lock);
|
||||||
tmp = s->to_dst_file;
|
tmp = s->to_dst_file;
|
||||||
s->to_dst_file = NULL;
|
s->to_dst_file = NULL;
|
||||||
|
@ -917,13 +917,12 @@ static void multifd_send_terminate_threads(Error *err)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
int multifd_save_cleanup(Error **errp)
|
void multifd_save_cleanup(void)
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
int ret = 0;
|
|
||||||
|
|
||||||
if (!migrate_use_multifd()) {
|
if (!migrate_use_multifd()) {
|
||||||
return 0;
|
return;
|
||||||
}
|
}
|
||||||
multifd_send_terminate_threads(NULL);
|
multifd_send_terminate_threads(NULL);
|
||||||
for (i = 0; i < migrate_multifd_channels(); i++) {
|
for (i = 0; i < migrate_multifd_channels(); i++) {
|
||||||
@ -953,7 +952,6 @@ int multifd_save_cleanup(Error **errp)
|
|||||||
multifd_send_state->pages = NULL;
|
multifd_send_state->pages = NULL;
|
||||||
g_free(multifd_send_state);
|
g_free(multifd_send_state);
|
||||||
multifd_send_state = NULL;
|
multifd_send_state = NULL;
|
||||||
return ret;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void multifd_send_sync_main(void)
|
static void multifd_send_sync_main(void)
|
||||||
@ -1071,9 +1069,8 @@ static void multifd_new_send_channel_async(QIOTask *task, gpointer opaque)
|
|||||||
Error *local_err = NULL;
|
Error *local_err = NULL;
|
||||||
|
|
||||||
if (qio_task_propagate_error(task, &local_err)) {
|
if (qio_task_propagate_error(task, &local_err)) {
|
||||||
if (multifd_save_cleanup(&local_err) != 0) {
|
migrate_set_error(migrate_get_current(), local_err);
|
||||||
migrate_set_error(migrate_get_current(), local_err);
|
multifd_save_cleanup();
|
||||||
}
|
|
||||||
} else {
|
} else {
|
||||||
p->c = QIO_CHANNEL(sioc);
|
p->c = QIO_CHANNEL(sioc);
|
||||||
qio_channel_set_delay(p->c, false);
|
qio_channel_set_delay(p->c, false);
|
||||||
|
@ -43,7 +43,7 @@ uint64_t ram_bytes_remaining(void);
|
|||||||
uint64_t ram_bytes_total(void);
|
uint64_t ram_bytes_total(void);
|
||||||
|
|
||||||
int multifd_save_setup(void);
|
int multifd_save_setup(void);
|
||||||
int multifd_save_cleanup(Error **errp);
|
void multifd_save_cleanup(void);
|
||||||
int multifd_load_setup(void);
|
int multifd_load_setup(void);
|
||||||
int multifd_load_cleanup(Error **errp);
|
int multifd_load_cleanup(Error **errp);
|
||||||
bool multifd_recv_all_channels_created(void);
|
bool multifd_recv_all_channels_created(void);
|
||||||
|
Loading…
Reference in New Issue
Block a user