Message ID | 20170906115143.27451-14-quintela@redhat.com |
---|---|
State | New |
Headers | show |
Series | Multifd | expand |
* Juan Quintela (quintela@redhat.com) wrote: > We need that on later patches. > > Signed-off-by: Juan Quintela <quintela@redhat.com> > Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com> > Reviewed-by: Peter Xu <peterx@redhat.com> > Reviewed-by: Daniel P. Berrange <berrange@redhat.com> I think this could also go into current qemu? Dave > --- > migration/migration.c | 14 ++++++++++++-- > 1 file changed, 12 insertions(+), 2 deletions(-) > > diff --git a/migration/migration.c b/migration/migration.c > index 9fec880a58..18bd24a14c 100644 > --- a/migration/migration.c > +++ b/migration/migration.c > @@ -372,9 +372,8 @@ static void process_incoming_migration_co(void *opaque) > qemu_bh_schedule(mis->bh); > } > > -void migration_fd_process_incoming(QEMUFile *f) > +static void migration_incoming_setup(QEMUFile *f) > { > - Coroutine *co = qemu_coroutine_create(process_incoming_migration_co, NULL); > MigrationIncomingState *mis = migration_incoming_get_current(); > > if (multifd_load_setup() != 0) { > @@ -387,9 +386,20 @@ void migration_fd_process_incoming(QEMUFile *f) > mis->from_src_file = f; > } > qemu_file_set_blocking(f, false); > +} > + > +static void migration_incoming_process(void) > +{ > + Coroutine *co = qemu_coroutine_create(process_incoming_migration_co, NULL); > qemu_coroutine_enter(co); > } > > +void migration_fd_process_incoming(QEMUFile *f) > +{ > + migration_incoming_setup(f); > + migration_incoming_process(); > +} > + > void migration_ioc_process_incoming(QIOChannel *ioc) > { > MigrationIncomingState *mis = migration_incoming_get_current(); > -- > 2.13.5 > -- Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK
diff --git a/migration/migration.c b/migration/migration.c index 9fec880a58..18bd24a14c 100644 --- a/migration/migration.c +++ b/migration/migration.c @@ -372,9 +372,8 @@ static void process_incoming_migration_co(void *opaque) qemu_bh_schedule(mis->bh); } -void migration_fd_process_incoming(QEMUFile *f) +static void migration_incoming_setup(QEMUFile *f) { - Coroutine *co = qemu_coroutine_create(process_incoming_migration_co, NULL); MigrationIncomingState *mis = migration_incoming_get_current(); if (multifd_load_setup() != 0) { @@ -387,9 +386,20 @@ void migration_fd_process_incoming(QEMUFile *f) mis->from_src_file = f; } qemu_file_set_blocking(f, false); +} + +static void migration_incoming_process(void) +{ + Coroutine *co = qemu_coroutine_create(process_incoming_migration_co, NULL); qemu_coroutine_enter(co); } +void migration_fd_process_incoming(QEMUFile *f) +{ + migration_incoming_setup(f); + migration_incoming_process(); +} + void migration_ioc_process_incoming(QIOChannel *ioc) { MigrationIncomingState *mis = migration_incoming_get_current();