* Juan Quintela (quint...@redhat.com) wrote: > Signed-off-by: Juan Quintela <quint...@redhat.com> >
Reviewed-by: Dr. David Alan Gilbert <dgilb...@redhat.com> > --- > > We can't trust that error_in is not NULL. Create a local_error. > --- > migration/migration.c | 4 +++- > migration/ram.c | 2 +- > migration/ram.h | 2 +- > 3 files changed, 5 insertions(+), 3 deletions(-) > > diff --git a/migration/migration.c b/migration/migration.c > index 1fb0aab44d..7140d1e040 100644 > --- a/migration/migration.c > +++ b/migration/migration.c > @@ -3367,6 +3367,7 @@ static void *migration_thread(void *opaque) > > void migrate_fd_connect(MigrationState *s, Error *error_in) > { > + Error *local_err = NULL; > int64_t rate_limit; > bool resume = s->state == MIGRATION_STATUS_POSTCOPY_PAUSED; > > @@ -3415,7 +3416,8 @@ void migrate_fd_connect(MigrationState *s, Error > *error_in) > return; > } > > - if (multifd_save_setup() != 0) { > + if (multifd_save_setup(&local_err) != 0) { > + error_report_err(local_err); > migrate_set_state(&s->state, MIGRATION_STATUS_SETUP, > MIGRATION_STATUS_FAILED); > migrate_fd_cleanup(s); > diff --git a/migration/ram.c b/migration/ram.c > index 3fd7fdffcf..d537264ba5 100644 > --- a/migration/ram.c > +++ b/migration/ram.c > @@ -1243,7 +1243,7 @@ static void multifd_new_send_channel_async(QIOTask > *task, gpointer opaque) > } > } > > -int multifd_save_setup(void) > +int multifd_save_setup(Error **errp) > { > int thread_count; > uint32_t page_count = MULTIFD_PACKET_SIZE / qemu_target_page_size(); > diff --git a/migration/ram.h b/migration/ram.h > index bd0eee79b6..da22a417ea 100644 > --- a/migration/ram.h > +++ b/migration/ram.h > @@ -41,7 +41,7 @@ int xbzrle_cache_resize(int64_t new_size, Error **errp); > uint64_t ram_bytes_remaining(void); > uint64_t ram_bytes_total(void); > > -int multifd_save_setup(void); > +int multifd_save_setup(Error **errp); > void multifd_save_cleanup(void); > int multifd_load_setup(void); > int multifd_load_cleanup(Error **errp); > -- > 2.24.1 > -- Dr. David Alan Gilbert / dgilb...@redhat.com / Manchester, UK