diff --git a/migration/multifd.c b/migration/multifd.c index d470af73ba..3574fd3953 100644 --- a/migration/multifd.c +++ b/migration/multifd.c @@ -101,6 +101,11 @@ static bool multifd_use_packets(void) return !migrate_mapped_ram(); } +void multifd_send_channel_created(void) +{ + qemu_sem_post(&multifd_send_state->channels_created); +} + /* Multifd without compression */ /** @@ -1023,7 +1028,7 @@ out: * Here we're not interested whether creation succeeded, only that * it happened at all. */ - qemu_sem_post(&multifd_send_state->channels_created); + multifd_send_channel_created(); if (ret) { return; diff --git a/migration/multifd.h b/migration/multifd.h index 1be985978e..1d8bbaf96b 100644 --- a/migration/multifd.h +++ b/migration/multifd.h @@ -17,6 +17,7 @@ typedef struct MultiFDRecvData MultiFDRecvData; bool multifd_send_setup(void); void multifd_send_shutdown(void); +void multifd_send_channel_created(void); int multifd_recv_setup(Error **errp); void multifd_recv_cleanup(void); void multifd_recv_shutdown(void);